Compatibilità

Consente l'accesso a nuove API nelle versioni API precedenti della piattaforma (molte utilizzano Material Design).
Aggiornamento più recente Release stabile Candidato per la release Versione beta Release alpha
29 maggio 2024 1.7.0 - - -

Dichiarazione delle dipendenze

Per aggiungere una dipendenza su Appcompat, devi aggiungere il Repository Maven di Google al tuo progetto. Per ulteriori informazioni, consulta il Repository Maven di Google.

Aggiungi le dipendenze per gli artefatti necessari nel file build.gradle per l'app o il modulo:

Groovy

dependencies {
    def appcompat_version = "1.7.0"

    implementation "androidx.appcompat:appcompat:$appcompat_version"
    // For loading and tinting drawables on older versions of the platform
    implementation "androidx.appcompat:appcompat-resources:$appcompat_version"
}

Kotlin

dependencies {
    val appcompat_version = "1.7.0"

    implementation("androidx.appcompat:appcompat:$appcompat_version")
    // For loading and tinting drawables on older versions of the platform
    implementation("androidx.appcompat:appcompat-resources:$appcompat_version")
}

Per ulteriori informazioni sulle dipendenze, consulta Aggiungere dipendenze build.

Feedback

Il tuo feedback ci aiuta a migliorare Jetpack. Facci sapere se rilevi nuovi problemi o hai idee per migliorare la libreria. Dai un'occhiata ai problemi esistenti in questa libreria prima di crearne una nuova. Puoi aggiungere il tuo voto a un problema esistente facendo clic sul pulsante a forma di stella.

Crea un nuovo problema

Per ulteriori informazioni, consulta la documentazione di Issue Tracker.

Versione 1.7

Versione 1.7.0

29 maggio 2024

androidx.appcompat:appcompat:1.7.0 e androidx.appcompat:appcompat-resources:1.7.0 vengono rilasciati. La versione 1.7.0 contiene questi commit.

Modifiche importanti dalla versione 1.6.0

  • Ora AppCompatDialog imposta correttamente LifecycleOwner, SavedStateRegistryOwner e OnBackPressedDispatcherOwner nella vista Arredamento della finestra di dialogo tramite le API ViewTree, risolvendo i problemi durante l'hosting di ComposeView in un AppCompatDialog.
  • AppCompatActivity ora imposta ViewTreeOnBackPressedDispatcherOwner in modo che sia possibile recuperare il supervisore dalla visualizzazione.
  • È stato migliorato notevolmente il rendimento di SupportMenuInflater.
  • Locale.getDefault() ora restituisce le impostazioni internazionali di sistema dopo un avvio a freddo.
  • Ora LinearLayoutCompat conserva i parametri di layout del margine.

Aggiornamenti delle dipendenze

  • AppCompat ora dipende dall'Attività 1.7.0.
  • AppCompat ora dipende dalla versione 1.5.4 di Fragment.

Versione 1.7.0-rc01

14 maggio 2024

androidx.appcompat:appcompat:1.7.0-rc01 e androidx.appcompat:appcompat-resources:1.7.0-rc01 vengono rilasciati. La versione 1.7.0-rc01 contiene questi commit.

Versione 1.7.0-beta01

1° maggio 2024

androidx.appcompat:appcompat:1.7.0-beta01 e androidx.appcompat:appcompat-resources:1.7.0-beta01 vengono rilasciati. La versione 1.7.0-beta01 contiene questi commit.

Versione 1.7.0-alpha03

26 luglio 2023

androidx.appcompat:appcompat:1.7.0-alpha03 e androidx.appcompat:appcompat-resources:1.7.0-alpha03 vengono rilasciati. La versione 1.7.0-alpha03 contiene questi commit.

Nuove funzionalità

  • Supporto per l'acquisizione di impostazioni internazionali per app in contesti diversi da Attività (I58e753). Per questa funzionalità sono state aggiunte quattro nuove API:

    • LocaleManagerCompat.getApplicationLocales(): per consentire agli sviluppatori di escludere dall'ambito dell'attività le impostazioni internazionali dell'app.

    • ContextCompat.getString(): restituisce stringhe localizzate in base alle impostazioni internazionali dell'app.

    • ContextCompat.getContextForLanguage(): il contesto restituito da questo metodo rispetterà le impostazioni internazionali dell'app.

    • ConfigurationCompat.setLocales(): per le API riportate sopra, imposta le impostazioni internazionali della configurazione.

Altre modifiche all'API

  • setLineHeight(unit, lineHeight) aggiunta a TextView classi di compatibilità (Ia9fa9)
  • setLineHeight(unit, lineHeight) aggiunta a TextView corsi di compatibilità (Ib2ee1)
  • setLineHeight(unit, lineHeight) aggiunto a TextView corsi di compatibilità (I15716)

Correzioni di bug

  • Ora AppCompatDialog imposta correttamente LifecycleOwner, SavedStateRegistryOwner e OnBackPressedDispatcherOwner nella vista Arredamento della finestra di dialogo tramite le API ViewTree, risolvendo i problemi durante l'hosting di ComposeView in un AppCompatDialog. AppCompat ora dipende dall'Attività 1.7.0. (Ib28ab, b/261314581).
  • Migliorare significativamente il rendimento di SupportMenuInflater (I0b087)

Versione 1.7.0-alpha02

8 febbraio 2023

androidx.appcompat:appcompat:1.7.0-alpha02 e androidx.appcompat:appcompat-resources:1.7.0-alpha02 vengono rilasciati. La versione 1.7.0-alpha02 contiene questi commit.

Correzioni di bug

  • Risolto il problema di perdita di memoria in AppCompatDelegate.getLocaleManagerForApplication() (44b57fd)
  • AppCompat ora dipende dalla versione di Fragment 1.5.4 (I54dcd)

Versione 1.7.0-alpha01

5 ottobre 2022

androidx.appcompat:appcompat:1.7.0-alpha01 e androidx.appcompat:appcompat-resources:1.7.0-alpha01 vengono rilasciati. La versione 1.7.0-alpha01 contiene questi commit.

Correzioni di bug

  • AppCompatActivity ora imposta ViewTreeOnBackPressedDispatcherOwner in modo che sia possibile recuperare il supervisore dalla visualizzazione. (I1a115, b/235416503).
  • Locale.getDefault() ora restituisce le impostazioni internazionali di sistema dopo un avvio a freddo (I6a94b)
  • LinearLayoutCompat ora conserva i parametri di layout del margine (Id2af4)

Versione 1.6.1

Versione 1.6.1

8 febbraio 2023

androidx.appcompat:appcompat:1.6.1 e androidx.appcompat:appcompat-resources:1.6.1 vengono rilasciati. La versione 1.6.1 contiene questi commit.

Correzioni di bug

  • Risolto il problema di perdita di memoria in AppCompatDelegate.getLocaleManagerForApplication() (44b57fd)

Versione 1.6.0

Versione 1.6.0

11 gennaio 2023

androidx.appcompat:appcompat:1.6.0 e androidx.appcompat:appcompat-resources:1.6.0 vengono rilasciati. La versione 1.6.0 contiene questi commit.

Modifiche importanti dalla versione 1.5.0

  • Aggiunto il supporto per la personalizzazione delle impostazioni internazionali delle applicazioni. Per saperne di più, visita la pagina AppCompatDelegate.setApplicationLocales(LocaleListCompat). Fornisce la compatibilità con le versioni precedenti della nuova API delle preferenze per lingua disponibile su Android 13.
  • Aggiornamenti relativi all'nullability per allineare con l'SDK Android 13 (Tiramisù, livello API 33).
  • Sono state aggiunte le classi di compatibilità DrawableWrapper, DrawableContainer e StateListDrawable alla piattaforma API pubblica

Versione 1.6.0-rc01

7 settembre 2022

androidx.appcompat:appcompat:1.6.0-rc01 e androidx.appcompat:appcompat-resources:1.6.0-rc01 vengono rilasciati. La versione 1.6.0-rc01 contiene questi commit.

Correzioni di bug

  • AppCompatActivity ora imposta ViewTreeOnBackPressedDispatcherOwner in modo che sia possibile recuperare il supervisore dalla visualizzazione. (I1a115, b/235416503).
  • È stata ripristinata una correzione di bug che comportava la sovrascrittura della configurazione passata a onConfigurationChanged, causando problemi per i test che inseriscono le proprie configurazioni personalizzate tramite onConfigurationChanged.

Versione 1.6.0-beta01

10 agosto 2022

androidx.appcompat:appcompat:1.6.0-beta01 e androidx.appcompat:appcompat-resources:1.6.0-beta01 vengono rilasciati. La versione 1.6.0-beta01 contiene questi commit.

Modifiche alle API

  • Sposta le classi di compatibilità DrawableWrapper, DrawableContainer e StateListDrawable nell'API pubblica. (I37f3e, b/227789566).
  • Introduce una nuova fabbrica per il gonfiatore a layout asincrono. (Ia657b)

Correzioni di bug

  • Toolbar ora chiamerà onPrepareMenu() prima che il menu venga mostrato, anziché in modo incondizionato quando il menu viene creato. (I2a58d, b/232206677).
  • AppCompat ora dipende esplicitamente da Lifecycle 2.5.1 e SavedState 1.2.0. (I7e3e2).
  • Aggiunto il supporto per il callback richiamato a AppCompatDelegate e l'implementazione della barra degli strumenti fornita da AppCompat. (I24062)
  • Finalizza le API AppCompat per 1.5.0-beta01 (I2a43d, b/236866227)
  • Finalizza le API AppCompat per 1.5.0-beta01 (I2a43d, b/236866227)

Versione 1.6.0-alpha05

15 giugno 2022

androidx.appcompat:appcompat:1.6.0-alpha05 e androidx.appcompat:appcompat-resources:1.6.0-alpha05 vengono rilasciati. La versione 1.6.0-alpha05 è stata sviluppata in un ramo privato di pre-release e non ha commit pubblici.

Modifiche alle API

  • Aggiornamenti dell'attributo null per allineare la piattaforma API finalizzata nell'SDK Tiramisu Beta 3
  • minCompileSdk è ora alla 33a per allinearsi all'SDK Tiramisu Beta 3

Versione 1.6.0-alpha04

18 maggio 2022

androidx.appcompat:appcompat:1.6.0-alpha04 e androidx.appcompat:appcompat-resources:1.6.0-alpha04 vengono rilasciati. Questa libreria è stata sviluppata in base a un ramo di pre-release privato, quindi non sono disponibili log di commit.

Modifiche alle API

  • Aggiungi un'API per eseguire l'override della limitazione della larghezza di SwitchCompat per l'utilizzo da parte di MDC-Android

Correzioni di bug

  • Evita la configurazione gestita quando la configurazione cambia al di fuori di attachBaseConfig

Versione 1.6.0-alpha03

27 aprile 2022

androidx.appcompat:appcompat:1.6.0-alpha03 e androidx.appcompat:appcompat-resources:1.6.0-alpha03 vengono rilasciati.

Questa versione richiede la compilazione di Android 13 Beta 1 e non è garantito che sia compatibile con il runtime con le future anteprime degli sviluppatori.

Nuove funzionalità

  • Supporto della selezione della lingua personalizzata a livello di app tramite AppCompatDelegate.setApplicationLocales(). Delegati all'implementazione della piattaforma nell'API 33 e versioni successive.

Versione 1.6.0-alpha01

23 febbraio 2022

androidx.appcompat:appcompat:1.6.0-alpha01 e androidx.appcompat:appcompat-resources:1.6.0-alpha01 vengono rilasciati. La versione 1.6.0-alpha01 è stata creata da un ramo interno e non dispone di commit pubblicamente visibili.

Questa versione richiede la compilazione di Android Tiramisu DP1 e non è garantito che sia compatibile con il runtime con le future anteprime degli sviluppatori.

Nuove funzionalità

  • Aggiunto il supporto per la personalizzazione delle impostazioni internazionali delle applicazioni. Consulta AppCompatDelegate.setApplicationLocales(LocaleListCompat) per saperne di più. Fornisce la compatibilità con le versioni precedenti della nuova API delle preferenze per lingua disponibile su Android 13.

Versione 1.5.1

Versione 1.5.1

7 settembre 2022

androidx.appcompat:appcompat:1.5.1 e androidx.appcompat:appcompat-resources:1.5.1 vengono rilasciati. La versione 1.5.1 contiene questi commit.

Aggiornamenti delle dipendenze

Versione 1.5.0

Versione 1.5.0

10 agosto 2022

androidx.appcompat:appcompat:1.5.0 e androidx.appcompat:appcompat-resources:1.5.0 vengono rilasciati. La versione 1.5.0 contiene questi commit.

Modifiche importanti dalla versione 1.4.0

  • Questa versione stabile include miglioramenti alla stabilità della modalità notturna, correzioni di bug, supporto della colorazione compound disegnabile per i widget di testo supportati da AppCompat e miglioramenti all'usabilità dell'API. Consulta le precedenti note di rilascio della serie 1.5.0 per un elenco dettagliato delle modifiche.

Versione 1.5.0-rc01

27 luglio 2022

androidx.appcompat:appcompat:1.5.0-rc01 e androidx.appcompat:appcompat-resources:1.5.0-rc01 vengono rilasciati. La versione 1.5.0-rc01 contiene questi commit.

Correzioni di bug

  • Risolvi un problema per cui il wrapper di contesto di AppCompat riutilizzava l'implementazione delle risorse di supporto del contesto dell'applicazione, con la conseguente sovrascrittura di uiMode nel contesto dell'applicazione. (Idf9d5)

Versione 1.5.0-beta01

13 luglio 2022

androidx.appcompat:appcompat:1.5.0-beta01 e androidx.appcompat:appcompat-resources:1.5.0-beta01 vengono rilasciati. La versione 1.5.0-beta01 contiene questi commit.

Modifiche alle API

  • Aggiungi un flag di override per disabilitare la regolazione della larghezza dell'opzione predefinita. (I37cb7)
  • Aggiungi l'annotazione @FloatRange all'API thumb position getter (If524c)
  • Aggiungi annotazioni variabili nulla mancanti a AnimatedStateListDrawableCompat (Ieb4ec)

Correzioni di bug

  • Finalizza le API AppCompat per 1.5.0-beta01 (I2a43d, b/236866227)
  • Modifica del valore di className per ActionMenuItemView per considerarlo come Button (I5ee1c)

Versione 1.5.0-alpha01

6 aprile 2022

androidx.appcompat:appcompat:1.5.0-alpha01 e androidx.appcompat:appcompat-resources:1.5.0-alpha01 vengono rilasciati. La versione 1.5.0-alpha01 contiene questi commit.

Modifiche alle API

  • Aggiunta una nuova API per esporre la posizione della miniatura dello switch nelle sottoclassi (I9bfb4)
  • Valore nulla aggiornato in modo che corrisponda a Tiramisu DP2 (I0cbb7)
  • Colorazione compostabile sottoposta a backporting per i widget derivati da TextView (Idf98c, b/165822337)
  • AppCompatDialog ora estende ComponentDialog per la compatibilità con OnBackPressedDispatcher (Id9b91, b/217620781)
  • La visibilità di SearchView.onQueryRefine() è ora protetta per consentire l'override (I6cce0, b/212882845)

Correzioni di bug

  • AppCompat Toolbar ora chiama l'API onPrepareMenu() di MenuHostHelper. (I9b9b5, b/227376894).
  • AppCompatEditText, AppCompatAutoCompleteEditText, AppCompatMultiAutoCompleteEditText non reimposterà più cliccabile o longClickable nel costruttore quando impostato in XML (Ic5066, b/221094907)
  • AppCompatEditText, AppCompatAutoCompleteTextView e AppCompatMultiAutoCompleteTextView non richiamano l'override di setKeyListener durante il costruttore (I5c13a, b/208480173)
  • Appcompat non esegue il wrapping delle istanze di NumberKeyListener passate a setKeyListener, consentendo a TextView di configurare correttamente le impostazioni internazionali su NumberKeyListeners (Ibf113, b/207119921)
  • Risolto il problema di tutte le sottoclassi NumberKeyListener introdotte in AppCompat 1.4.0 che consentivano l'inserimento di caratteri imprevisti come la punteggiatura (Iede7a, b/207119921)

Versione 1.4.2

Versione 1.4.2

1° giugno 2022

androidx.appcompat:appcompat:1.4.2 e androidx.appcompat:appcompat-resources:1.4.2 vengono rilasciati. La versione 1.4.2 contiene questi commit.

Correzioni di bug

  • Risoluzione dell'arresto anomalo in cui AppCompatDelegateImpl ha effettuato una chiamata interna a ensureSubDecor prima della creazione della barra delle azioni (aosp/2048349, b/226648941)

Versione 1.4.1

12 gennaio 2022

androidx.appcompat:appcompat:1.4.1 e androidx.appcompat:appcompat-resources:1.4.1 vengono rilasciati. La versione 1.4.1 contiene questi commit.

Correzioni di bug

  • AppCompatEditText, AppCompatAutoCompleteTextView e AppCompatMultiAutoCompleteTextView non chiameranno l'override setKeyListener durante il costruttore. (I5c13a, b/208480173).
  • Emoji2 non eseguirà il wrapping delle istanze di NumberKeyListener, consentendo di configurare le impostazioni internazionali tramite textview.
    • Appcompat non eseguirà il wrapping delle istanze di NumberKeyListener passate a setKeyListener, consentendo a TextView di configurare correttamente le impostazioni internazionali su NumberKeyListeners. (Ibf113, b/207119921)
  • Risolvi il problema relativo a tutte le sottoclassi NumberKeyListener introdotte in appcompat 1.4.0 che consentivano l'inserimento di caratteri imprevisti come la punteggiatura (b/207119921) (Iede7a, b/207119921)

Versione 1.4.0

Versione 1.4.0

17 novembre 2021

androidx.appcompat:appcompat:1.4.0 e androidx.appcompat:appcompat-resources:1.4.0 vengono rilasciati. La versione 1.4.0 contiene questi commit.

Modifiche importanti dalla versione 1.3.0

  • La libreria ora ha come target il livello di lingua Java 8
  • Il supporto di emoji aggiornabili è attivato per impostazione predefinita tramite la libreria androidx.emoji2
  • Ispezione degli attributi migliorata nell'ispettore di layout di Android Studio (I02d55)
  • Aggiunto il supporto per risorse colorate nidificate e disegnabili vettoriali nei backport di caricamento delle risorse AppCompat. Tuttavia, tieni presente che questo significa che le app non possono sostituire getDrawable() su un oggetto Resources personalizzato quando i backport sono abilitati. (Ia6b03, b/176129022).
  • Sfondo colorato backport e segno di spunta per CheckedTextView (I8575c)

Versione 1.4.0-rc01

27 ottobre 2021

androidx.appcompat:appcompat:1.4.0-rc01 e androidx.appcompat:appcompat-resources:1.4.0-rc01 vengono rilasciati. La versione 1.4.0-rc01 contiene questi commit.

Versione 1.4.0-beta01

29 settembre 2021

androidx.appcompat:appcompat:1.4.0-beta01 e androidx.appcompat:appcompat-resources:1.4.0-beta01 vengono rilasciati. La versione 1.4.0-beta01 contiene questi commit.

Modifiche alle API

  • AndroidX AppCompat Toolbar è ora un MenuHost e può gestire MenuProvider. (I5cd95)

Correzioni di bug

  • Correzione della gestione di AppCompatProgressBar delle barre di avanzamento degli elenchi di livelli (I6ece3, b/142004509)
  • Conserva correttamente android:digits in AppCompatEditText. In questo modo viene corretto il bug 193047889 introdotto in AppCompat 1.4.0-alpha03. (I4b4fc, b/193047889).
  • L'SDK OnReachContentListener integrato e il supporto delle API lib. (Ic6914, b/173814913).

Versione 1.4.0-alpha03

30 giugno 2021

androidx.appcompat:appcompat:1.4.0-alpha03 e androidx.appcompat:appcompat-resources:1.4.0-alpha03 vengono rilasciati. La versione 1.4.0-alpha03 contiene questi commit.

Nuove funzionalità

  • La libreria ora ha come target il livello di lingua Java 8
  • Aggiunta del supporto emoji2 per altre sottoclassi TextView (AppCompatMultiAutoCompleteTextView, AppCompatAutoCompleteTextView, AppCompatRadioButton, AppCompatCheckBox).

Modifiche alle API

  • È stata aggiunta un'API per configurare una InputConnection in modo da utilizzare View.performReachContent per gestire le chiamate IME a InputConnection.commitContent. (I3a2ad).
  • Aggiungi il supporto di EmojiCompat a AppCompatMultiAutoCompleteTextView (Ifece0)
  • Aggiungi il supporto di EmojiCompat a AppCompatAutoCompleteTextView (Ia1f4b)
  • Aggiungi il supporto di EmojiCompat a AppCompatRadioButton (If08af)
  • Aggiungi il supporto di EmojiCompat a AppCompatCheckBox (I2b3bc)
  • Consenti KeyListener null in AppCompatEditText. Questa operazione inverte l'annotazione non null aggiunta ad AppCompatEditText in 1.4-alpha01 e ripristina il comportamento precedente quando viene passato null. (I21482, b/189559345)
  • Aggiungi PopupMenu.setForceShowIcon per parità con le API della piattaforma (I43bb3, b/182789798)

Correzioni di bug

  • Correggi il bug in AppCompatEditText che reimposterà l'inputType specificato in XML per rimuovere le varianti. Questo bug è stato introdotto in AppCompat 1.4.0-alpha01. (I9df36, b/191061070).

Versione 1.4.0-alpha02

2 giugno 2021

androidx.appcompat:appcompat:1.4.0-alpha02 e androidx.appcompat:appcompat-resources:1.4.0-alpha02 vengono rilasciati. La versione 1.4.0-alpha02 contiene questi commit.

Modifiche alle API

  • Aggiunto il costruttore AppCompatDialogFragment che utilizza un ID layout (Icbf22, b/188119987)
  • Supporto dello strumento di controllo del layout migliorato (I02d55)
  • Rinominato pacchetto in emoji2-views-helper in androidx.emoji2.viewsintegration. Questa è una modifica che provoca un errore per AppCompat 1.4.0-alpha01 e le app devono garantire che la dipendenza AppCompat sia aggiornata in modo da utilizzare la nuova versione di emoji2. (Ie8397)

Correzioni di bug

  • Risolto il problema per cui le attività interrotte non ricevevano modifiche alla configurazione dalle modifiche alla modalità notturna strumenti di AppCompat. (I8fa8f, b/188681415).
  • Risolto il bug in AppCompatEditText che avrebbe reso attivabile le visualizzazioni anche quando android:focusable="false" era specificato nell'xml (bug introdotto in AppCompat 1.4.0-alpha01) (Ib9412)

Versione 1.4.0-alpha01

18 maggio 2021

androidx.appcompat:appcompat:1.4.0-alpha01 e androidx.appcompat:appcompat-resources:1.4.0-alpha01 vengono rilasciati. La versione 1.4.0-alpha01 contiene questi commit.

Modifiche alle API

  • Supporto integrato di EmojiCompat su diversi widget AppCompat (Id409b, If7a1a, Ic262d, Ib5f4a, I4fb3c).
  • Aggiunto il supporto per risorse colorate nidificate e disegnabili vettoriali nei backport di caricamento delle risorse AppCompat. Tuttavia, tieni presente che questo significa che le app non possono eseguire l'override di getDrawable() su un oggetto Risorse personalizzato quando sono abilitati i backport. (Ia6b03, b/176129022).
  • Supporto dello strumento di controllo del layout migliorato (I6d771)

Correzioni di bug

  • Risolto il problema per cui la chiamata a setSupportActionBar dopo aver impostato il callback della finestra sovrascriveva il callback. (Ie43ee, b/186791590)
  • È stata aggiunta una soluzione alternativa per un problema sugli SDK 29 e 30 in cui le risorse ColorStateListDrawable clonate dalla cache disegnabile non caricano un colore predefinito finché non ricevono una modifica dello stato. (Iedb4b).
  • Evita gli NPE quando gestisci callback della modalità di azione di selezione personalizzata nulli nelle viste supportate da AppCompat. (I033c7, b/173435375).

Aggiornamenti delle dipendenze

Contributi esterni

  • Sfondo colore backport e segno di spunta per CheckedTextView (I8575c)

Versione 1.3.1

Versione 1.3.1

21 luglio 2021

androidx.appcompat:appcompat:1.3.1 e androidx.appcompat:appcompat-resources:1.3.1 vengono rilasciati. La versione 1.3.1 contiene questi commit.

Aggiornamenti delle dipendenze

  • AppCompat ora dipende dall'Attività 1.2.4 e dal Frammento 1.3.6, rendendo le correzioni di queste release incluse per impostazione predefinita quando si utilizza AppCompat 1.3.1. (I8fbec)

Versione 1.3.0

Versione 1.3.0

18 maggio 2021

androidx.appcompat:appcompat:1.3.0 e androidx.appcompat:appcompat-resources:1.3.0 vengono rilasciati. La versione 1.3.0 contiene questi commit.

Modifiche importanti dalla versione 1.2.0

  • È stata corretta la propagazione degli attributi android:theme in <include> d layout sui dispositivi precedenti a Lollipop
  • Le dimensioni della libreria sono state ridotte convertendo molte risorse PNG in VectorDrawables
  • Aggiunto il supporto per gli eventi di trascinamento in AppCompatEditText con OnReceiveContentListener
  • Aggiornamento per supportare le modifiche alla gestione dei riquadri delle finestre di Android 11
  • Aggiunto il supporto per RTL nelle voci di menu con icone
  • È stato aggiunto il supporto per l'inserimento di contenuti avanzati (ad es. incollare un'immagine) in AppCompatEditText

  • Dipendenze aggiornate: appcompat ha aggiornato molte delle sue dipendenze transitive per supportare nuove funzionalità e correzioni:

Versione 1.3.0-rc01

24 marzo 2021

androidx.appcompat:appcompat:1.3.0-rc01 e androidx.appcompat:appcompat-resources:1.3.0-rc01 vengono rilasciati. La versione 1.3.0-rc01 contiene questi commit.

Correzioni di bug

  • Impedisce la revoca prematura delle autorizzazioni durante la gestione dell'inserimento di contenuti IME

Aggiornamenti delle dipendenze

Contributi esterni

  • È stata corretta la propagazione dell'attributo android:theme in <include> d layout su dispositivi precedenti a Lollipop (Simon Bergner all'Opera)

Versione 1.3.0-beta01

13 gennaio 2021

androidx.appcompat:appcompat:1.3.0-beta01 e androidx.appcompat:appcompat-resources:1.3.0-beta01 vengono rilasciati. La versione 1.3.0-beta01 contiene questi commit.

Nuove funzionalità

  • I disegnabili della modalità di azione a livello di tema sono stati sostituiti con le origini vettoriali. Ciò potrebbe causare lievi variazioni nell'aspetto visivo delle singole icone. (I741a6)

Modifiche alle API

  • Trascinamento (eventi di rilascio) integrati in AppCompatEditText con On amRiceviContentListener. (Ib26c9, b/175343405).
  • Aggiornamento di OnReceiveContentListener e API correlate. Per maggiori dettagli, vedi le modifiche alla libreria androidx.core. (Ib4616, b/173814913)
  • Spostato widget.RichContentReachrCompat a view.OnRiceviContentListener. (Ifdab7, b/173814913)
  • È stato eseguito il backporting delle API per fornire e recuperare il testo circostante iniziale in EditorInfoCompat. Consentono alle app IME di evitare ulteriore latenza IPC. (Ie3809)

Versione 1.3.0-alpha02

19 agosto 2020

androidx.appcompat:appcompat:1.3.0-alpha02 e androidx.appcompat:appcompat-resources:1.3.0-alpha02 vengono rilasciati. La versione 1.3.0-alpha02 contiene questi commit.

Correzioni di bug

  • I disegnabili PNG AppCompatRatingBar sono stati sostituiti con origini vettoriali. Ciò potrebbe causare lievi variazioni nell'aspetto visivo delle singole stelle. (I6b99d)
  • Aggiorna WindowInsetsCompat alle API Android 11 (I3df9e)
  • Supporta RTL nelle voci di menu con icone (I2f5c5)

Aggiornamenti delle dipendenze

  • AppCompat ha aggiornato la dipendenza da frammento 1.1.0 a Fragment 1.3.0-alpha08. Ti consigliamo vivamente di leggere le note di rilascio di Fragment 1.2.0 per comprendere le principali modifiche introdotte nella release di Fragment precedente.
  • AppCompat ha aggiornato la dipendenza dall'Attività 1.0.0 all'Attività 1.2.0-alpha08. Ti consigliamo vivamente di leggere le note di rilascio di Attività 1.1.0 per comprendere le principali modifiche introdotte nella release di Attività precedente.
    • Ora AppCompatActivity usa l'API OnContextAvailableListener introdotta nella sezione Attività 1.2.0-alpha08 per configurare AppCompatDelegate. Qualsiasi listener aggiunto alle sottoclassi di AppCompatActivity verrà eseguito dopo questo listener. (I513da)

Versione 1.3.0-alpha01

20 maggio 2020

androidx.appcompat:appcompat:1.3.0-alpha01 e androidx.appcompat:appcompat-resources:1.3.0-alpha01 vengono rilasciati. La versione 1.3.0-alpha01 contiene questi commit.

Nuove funzionalità

  • Aggiungi una nuova regola Lint per segnalare le chiamate a setActionBar sulle attività che estendono AppCompatActivity
  • È stato aggiunto il supporto per ViewTreeLifecycleOwner da Ciclo di vita 2.3.0-alpha01, ViewTreeViewModelStoreOwner da Ciclo di vita 2.3.0-alpha03 e ViewTreeSavedStateRegistryOwner da SalvatState 1.1.0-alpha01 quando si utilizza un View all'interno di un AppCompatActivity. (b/151603528, aosp/1300264)
  • Aggiungi un'API comune per l'inserimento di contenuti avanzati (ad es. incollare un'immagine). Il nuovo callback fornisce una singola API che le app possono implementare per supportare i diversi modi in cui è possibile inserire contenuti avanzati. Per il momento l'API viene aggiunta solo a AppCompatEditText e verrà richiamata per i seguenti percorsi del codice:
    • incolla dagli appunti
    • inserimento di contenuti dall'IME (InputConnection.commitContent) (I22bf7)

Correzioni di bug

  • Da AppCompat 1.2.0-rc01: AppCompat non chiama più onMenuOpened() con un menu null. (b/142843126)
  • Risolvi correttamente i colori dei link di testo e dei suggerimenti sui dispositivi meno recenti quando TextViewCompat.setTextAspetto viene richiamato con uno stile di aspetto del testo con elenchi di stati dei colori che fanno riferimento agli attributi dei colori del tema (b/154702995)

Versione 1.2.0

Versione 1.2.0

5 agosto 2020

androidx.appcompat:appcompat:1.2.0 e androidx.appcompat:appcompat-resources:1.2.0 vengono rilasciati. La versione 1.2.0 contiene questi commit.

Importanti modifiche dalla versione 1.1.0

  • Supporto corretto per i casi d'uso di override della configurazione, incluse impostazioni internazionali personalizzate e scale di caratteri. Consulta questa pagina per un esempio di come implementare correttamente gli override utilizzando appcompat:1.2.0.
  • Deprecato AppCompatDelegate.attachBaseContext(). Se stai chiamando o eseguendo l'override di questo metodo, usa invece AppCompatDelegate.attachBaseContext2().
  • Deprecato CollapsibleActionView. Questa interfaccia non è più necessaria. Utilizza l'interfaccia android.view.CollapsibleActionView fornita dalla piattaforma.

Versione 1.2.0-rc02

22 luglio 2020

androidx.appcompat:appcompat:1.2.0-rc02 e androidx.appcompat:appcompat-resources:1.2.0-rc02 vengono rilasciati. La versione 1.2.0-rc02 contiene questi commit.

Correzioni di bug

  • Risolto un problema relativo alla modalità notturna in cui la chiamata a AppCompatDelegate.setDefaultNightMode da una finestra di dialogo a volte non permetteva di ricreare le attività e di applicare la nuova modalità. (aosp/1348308, b/158923881)

Versione 1.2.0-rc01

14 maggio 2020

androidx.appcompat:appcompat:1.2.0-rc01 e androidx.appcompat:appcompat-resources:1.2.0-rc01 vengono rilasciati. La versione 1.2.0-rc01 contiene questi commit.

Modifiche alle API

  • AppCompatDelegate.setLocalNightMode è stato contrassegnato come richiede l'SDK 17 o versioni successive a causa di un problema della piattaforma con modifiche alla configurazione che si verificano tra le attività degli SDK precedenti

Correzioni di bug

  • Ora è possibile chiamare AppCompatDelegate.setLocalNightMode prima del giorno Activity.attachBaseContext
  • Risolto il consumo di elementi inseriti nella cache di ActionBarOverlayLayout, che utilizzava in modo errato gli inserti memorizzati nella cache
  • AppCompat non chiama più onMenuOpened() con un menu null. (b/142843126)

Versione 1.2.0-beta01

1° aprile 2020

androidx.appcompat:appcompat:1.2.0-beta01 e androidx.appcompat:appcompat-resources:1.2.0-beta01 vengono rilasciati. La versione 1.2.0-beta01 contiene questi commit.

Nuove funzionalità

  • Sono state aggiunte le nuove regole lint seguenti che segnalano utilizzi non corretti di AppCompat nei seguenti scenari:
    • Caricamento degli elenchi di stati dei colori: suggerisce di utilizzare le API ContextCompat e AppCompatResources per la compatibilità con le versioni precedenti
    • Caricamento dei disegni di disegno: suggerisce di utilizzare le API ContextCompat e ResourcesCompat per la compatibilità con le versioni precedenti
    • Utilizzo degli elenchi di stati colorati con l'attributo alfa: flag mancanti nell'attributo android:alpha che genereranno un aspetto non corretto su alcune versioni della piattaforma
    • Colorazione delle visualizzazioni delle immagini: flag non utilizzati app:tint che causeranno un aspetto non corretto sulle versioni precedenti della piattaforma
    • Utilizzo di disegnabili composti e colorazione nelle visualizzazioni del testo. Suggerisce di utilizzare attributi di compatibilità e API per la compatibilità con le versioni precedenti.

Correzioni di bug

  • Risolto il problema per cui ActionBarOverlayLayout (azione per la decorazione della finestra) non inviava correttamente WindowInset.
  • Risolti i problemi relativi alla colorazione dei disegni e all'aspetto del testo nelle versioni precedenti della piattaforma
  • Risolto un problema per cui androidx.appcompat:appcompat:1.1.0 arrestava WebView quando veniva premuto a lungo in WebView (b/141351441)
  • Correzioni implementate per i problemi relativi alla manipolazione del contesto di base e al recupero dei servizi di sistema durante l'avvio dell'attività.

Versione 1.2.0-alpha03

4 marzo 2020

androidx.appcompat:appcompat:1.2.0-alpha03 e androidx.appcompat:appcompat-resources:1.2.0-alpha03 vengono rilasciati. La versione 1.2.0-alpha03 contiene questi commit.

Correzioni di bug

  • Risolto un problema per cui la protezione dello stato della modalità di azione si estende erroneamente nella barra di navigazione e ha il colore sbagliato (Ia4a09)
  • Risoluzione del problema per cui le attività interrotte non venivano riprese a livello API 23 e inferiore (I45201)

Versione 1.2.0-alpha02

29 gennaio 2020

androidx.appcompat:appcompat:1.2.0-alpha02 e androidx.appcompat:appcompat-resources:1.2.0-alpha02 vengono rilasciati. La versione 1.2.0-alpha02 contiene questi commit.

Correzioni di bug

  • Risolto il problema per cui appcompat 1.1.0 arrestava WebView in caso di pressione prolungata (b/141351441)
  • Risolto il problema di colorazione tracciabile su TextView in relazione alle disegnabili composte nel livello API 23 (aosp/1172194)
  • Assicurati che il contesto di base sia sempre un wrapper (aosp/1194355)
  • Sono stati aggiunti alcuni miglioramenti per semplificare la modifica della configurazione del contesto di base (aosp/1204543)
  • createConfigurationContext() disattivata per Robolectric (aosp/1186218)

Versione 1.2.0-alpha01

4 dicembre 2019

androidx.appcompat:appcompat:1.2.0-alpha01 e androidx.appcompat:appcompat-resources:1.2.0-alpha01 vengono rilasciati. La versione 1.2.0-alpha01 contiene questi commit.

Correzioni di bug

  • Le chiamate a PackageManager.getActivityInfo non si arrestano più in modo anomalo in modalità con restrizioni con i controlli boot-aware abilitati
  • Correzioni dei disegni di colorazione su AppCompatButton
  • Correzioni della tinta e dell'aspetto del testo nelle versioni precedenti della piattaforma

Versione 1.1.0

Versione 1.1.0

5 settembre 2019

androidx.appcompat:appcompat:1.1.0 e androidx.appcompat:appcompat-resources:1.1.0 vengono rilasciati. I commit inclusi in questa versione sono disponibili qui.

Modifiche importanti dalla versione 1.0.0

  • Miglioramenti della modalità Buio: MODE_NIGHT_AUTO e il passaggio da Buio a Luce in base all'ora attuale sono stati ritirati. Prendere in considerazione l'utilizzo di un'impostazione esplicita, o MODE_NIGHT_AUTO_BATTERY.
  • Attività 1.0: AppCompatActivity ora si estende in modo transitivo da ComponentActivity dall'Attività 1.0.0 tramite Frammento 1.1.0. Per informazioni sulle modifiche in ogni libreria, consulta le note di rilascio associate.
  • Costruttore AppCompatActivity LayoutId: le sottoclassi AppCompatActivity ora possono facoltativamente richiamare un costruttore su AppCompatActivity che accetta un ID R.layout, a indicare il layout che dovrebbe essere impostato come visualizzazione del contenuto in alternativa alla chiamata di setContentView() in onCreate(). Questo non cambia il requisito che prevede che la sottoclasse abbia un costruttore senza argomento.

Versione 1.1.0-rc01

2 luglio 2019

androidx.appcompat:appcompat:1.1.0-rc01 e androidx.appcompat:appcompat-resources:1.1.0-rc01 vengono rilasciati. I commit inclusi in questa versione sono disponibili qui.

Correzioni di bug

  • DayNight ora rispetta correttamente configChanges (aosp/981105)
  • Chiama onConfigurationChanged solo per le attività avviate (aosp/987483)

Versione 1.1.0-beta01

5 giugno 2019

androidx.appcompat:appcompat:1.1.0-beta01 e androidx.appcompat:appcompat-resources:1.1.0-beta01 vengono rilasciati. I commit inclusi in questa versione sono disponibili qui.

Correzioni di bug

  • Assicurati di ripulire i ricevitori in AppCompatDialogs (aosp/959376)
  • Aggiungi il supporto di buttonGravity=center_vertical su Toolbar (b/130361721)
  • Correggi offset orizzontale della rotellina (b/79477181)

Versione 1.1.0-alpha05

7 maggio 2019

androidx.appcompat:appcompat:1.1.0-alpha05 e androidx.appcompat:appcompat-resources:1.1.0-alpha05 vengono rilasciati. I commit inclusi in questa versione sono disponibili qui.

Nuove funzionalità

Correzioni di bug

  • Varie correzioni per la modalità DayNight
  • Annulla la struttura per qualsiasi modifica dello sfondo nella barra delle azioni
  • Correggi scorrimento del widget a rotazione
  • Correggi gli sfondi delle finestre del set personalizzato sottoposti a override in AlertDialog

Versione 1.1.0-alpha04

3 aprile 2019

androidx.appcompat:appcompat:1.1.0-alpha04 e androidx.appcompat:appcompat-resources:1.1.0-alpha04 vengono rilasciati. I commit inclusi in questa versione sono disponibili qui.

Nuove funzionalità

  • È stata aggiunta una nuova famiglia di temi (ThemeOverlay.AppCompat.DayNight). Devono essere utilizzate quando si utilizza la funzionalità DayNight.

Modifiche alle API

  • AppCompatActivity ora contiene un secondo costruttore che prende un @LayoutRes int, che sostituisce il precedente comportamento di annotare la classe AppCompatActivity con @ContentView. Questo approccio funziona sia nei moduli delle app sia delle librerie. (b/128352521)

Correzioni di bug

  • Ove possibile, le dipendenze interne sono state fissate alle versioni stabili
  • corretto AppCompatSpinnerlo scorrimento in modalità a discesa )b/124274573)
  • Chiamate applyOverrideConfiguration() solo se necessario per DayNight

Versione 1.1.0-alpha03

13 marzo 2019

androidx.appcompat:appcompat:1.1.0-alpha03 e androidx.appcompat:appcompat-resources:1.1.0-alpha03 vengono rilasciati. Questa è la prima release di appcompat-resources. L'elenco completo dei commit inclusi in questa versione è disponibile qui.

Nuove funzionalità

  • La nuova libreria appcompat-resources contiene API che consentono alle app di caricare e colorare i disegnabili (inclusi quelli vettoriali) su versioni precedenti della piattaforma. Si tratta della stessa funzionalità che in precedenza faceva parte del modulo appcompat, ma ora è disponibile senza l'overhead del backport completo dell'appcompat di Material Design, che include widget, finestre di dialogo, modalità notturna e così via.
  • Correzioni principali relative al supporto della modalità DayNight
  • Nuova opzione MODE_NIGHT_AUTO_BATTERY per la modalità DayNight
  • Colorazione disegnabile in AppCompatTextView
  • Ora è possibile applicare uno stile all'overflow della barra degli strumenti con elenchi di stati dei colori a tema
  • Ora le icone dei menu possono utilizzare colori che fanno riferimento agli attributi del tema
  • Il nuovo attributo app:menu può essere impostato su una barra degli strumenti per fornire il contenuto del menu al momento dell'inflazione

Correzioni di bug

  • È stata corretta la modalità di tinta predefinita su ImageView nella versione 21
  • Correzione dell'eliminazione errata del popup della rotellina durante la rotazione del dispositivo
  • La correzione DayNight non rispetta configChanges nel file manifest
  • Risolto il passaggio a MODE_NIGHT_FOLLOW_SYSTEM che non funzionava (b/111345020)
  • Corretto il ripristino delle risorse DayNight in WebView (b/37124582)

Versione 1.1.0-alpha02

7 febbraio 2019

androidx.appcompat:appcompat 1.1.0-alpha02 viene rilasciato.

Nuove funzionalità

  • Estrazione della gestione trainabile specifica delle risorse in un hook (aosp/870976)
  • È stato consentito alla barra degli strumenti titleTextColor e subtitleTextColor di utilizzare un ColorStateList e sono stati aggiunti sovraccarichi ColorStateList dei metodi setTitleTextColor e setSubtitleTextColor (aosp/867489)

Correzioni di bug

  • Risolto il problema di fontFamily che non funzionava sulle versioni precedenti dell'API 24 (aosp/807054)
  • Risolto il bug per cui textFontWeight non funzionava quando un'attività si estendeva da AppCompatActivity (aosp/847640)
  • Risolto il bug per cui il testo del titolo nel popup del widget a rotazione (quando si utilizza la modalità finestra di dialogo) non utilizzava il carattere specificato in fontFamily (aosp/789994)
  • Correggi il bug che impediva ai widget AppCompatCheckBox e AppCompatRadioButton di modificare la tinta dello sfondo (aosp/825160)
  • Risolto il bug per cui AppCompat non eseguiva l'override di android: list styles (aosp/862350)

Versione 1.1.0-alpha01

3 dicembre 2018

Nuove funzionalità

  • AppCompatTextView ora supporta i disegnabili composti app:drawableLeftCompat, app:drawableTopCompat, app:drawableRightCompat, app:drawableBottomCompat, app:drawableStartCompat e app:drawableEndCompat, supportando i tipi di disegno di cui è stato eseguito il backporting come VectorDrawableCompat.

  • Animazione delle modifiche di stato dei controlli predefiniti di AppCompatCheckBox e AppCompatRadioButton.

Modifiche alle API

  • aosp/740385: ActionBarOverlayLayout ora implementa NestedscrollingParent2 e NestedScorriingParent3 per semplificare le funzionalità più recenti dello scorrimento nidificato 3. Se al momento il codice sviluppatore esegue l'override di ActionBarOverLayLayout.onNestedScroll(View, int, int, int, int), probabilmente non verrà più chiamato e al suo posto verrà eseguito l'override di ActionBarOverLayLayout.onNestedScroll(View, int, int, int, int, int, int[]).

Versione 1.0.2

Versione 1.0.2

7 novembre 2018

Release di bug di core-1.0.1 e appcompat-1.0.2.

Correzioni di bug

  • È stato corretto il bug per cui PrecomputedTextCompat si arrestava in modo anomalo quando utilizzato con RTL AppCompatTextView. B/113070424

Versione 1.0.0

Versione 1.0.0

7 novembre 2018

Nuove funzionalità