Appcompat
Ultimo aggiornamento | Release stabile | Candidato per la release | Versione beta | Versione alpha |
---|---|---|---|---|
29 maggio 2024 | 1.7.0 | - | - | - |
Dichiarazione delle dipendenze
Per aggiungere una dipendenza da 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 elementi necessari nel file build.gradle
per la tua app o il tuo modulo:
Alla moda
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 di compilazione.
Feedback
Il tuo feedback ci aiuta a migliorare Jetpack. Facci sapere se riscontri nuovi problemi o hai idee per migliorare questa raccolta. Prima di crearne uno nuovo, dai un'occhiata ai problemi esistenti in questa raccolta. Puoi aggiungere il tuo voto a un problema esistente facendo clic sul pulsante a forma di stella.
Per ulteriori informazioni, consulta la documentazione del Tracker dei problemi.
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
AppCompatDialog
ora imposta correttamenteLifecycleOwner
,SavedStateRegistryOwner
eOnBackPressedDispatcherOwner
nella visualizzazione della decorazione della finestra di dialogo tramite le APIViewTree
, risolvendo i problemi relativi all'hosting di unComposeView
all'interno di unAppCompatDialog
.AppCompatActivity
ora impostaViewTreeOnBackPressedDispatcherOwner
in modo da poter recuperare il gestore dalla visualizzazione.- Sono state migliorate notevolmente le prestazioni di
SupportMenuInflater
. - Ora
Locale.getDefault()
restituisce le impostazioni internazionali del sistema dopo un avvio a freddo. LinearLayoutCompat
ora mantiene i parametri di layout del margine.
Aggiornamenti delle dipendenze
AppCompat
ora dipende da Activity 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'ottenimento delle 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 rimuovere le lingue per app dall'ambito dell'attività.ContextCompat.getString()
: restituisce stringhe localizzate in base alle impostazioni internazionali per app.ContextCompat.getContextForLanguage()
: il contesto restituito da questo metodo rispetterà le impostazioni internazionali per app.ConfigurationCompat.setLocales()
: per le API precedenti, per impostare le impostazioni internazionali della configurazione.
Altre modifiche all'API
- È stata aggiunta la classe
setLineHeight(unit, lineHeight)
alle classi di compatibilitàTextView
(Ia9fa9) - Aggiunta
setLineHeight(unit, lineHeight)
alle classi di compatibilitàTextView
(Ib2ee1) - È stato aggiunto
setLineHeight(unit, lineHeight)
alle classi di compatibilitàTextView
(I15716)
Correzioni di bug
AppCompatDialog
ora imposta correttamenteLifecycleOwner
,SavedStateRegistryOwner
eOnBackPressedDispatcherOwner
nella visualizzazione della decorazione della finestra di dialogo tramite le APIViewTree
, risolvendo i problemi relativi all'hosting di unComposeView
all'interno di unAppCompatDialog
.AppCompat
ora dipende da Activity 1.7.0. (Ib28ab, b/261314581)- Migliorare notevolmente 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
- È stata risolta una perdita di memoria in
AppCompatDelegate.getLocaleManagerForApplication()
(44b57fd) AppCompat
ora dipende dalla versione 1.5.4 di Fragment (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 impostaViewTreeOnBackPressedDispatcherOwner
in modo da poter recuperare il gestore dalla visualizzazione. (I1a115, b/235416503)Locale.getDefault()
ora restituisce le impostazioni internazionali del 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
- È stata risolta una 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
- È stato aggiunto il supporto per la personalizzazione delle impostazioni internazionali dell'applicazione. Per ulteriori informazioni, visita la pagina
AppCompatDelegate.setApplicationLocales(LocaleListCompat)
. Fornisce la compatibilità con le versioni precedenti per la nuova API per le preferenze per lingua disponibile in Android 13. - Aggiornamenti della nullabilità in linea con l'SDK Android 13 (Tiramisu, livello API 33).
- Sono state aggiunte le classi di compatibilità
DrawableWrapper
,DrawableContainer
eStateListDrawable
all'interfaccia 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 impostaViewTreeOnBackPressedDispatcherOwner
in modo da poter recuperare il gestore dalla visualizzazione. (I1a115, b/235416503)- È stata annullata una correzione di bug che ha sovrascritto la configurazione passata a
onConfigurationChanged
, causando problemi per i test che iniettavano le proprie configurazioni personalizzate tramiteonConfigurationChanged
.
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 all'API
- Sposta le classi di compatibilità
DrawableWrapper
,DrawableContainer
eStateListDrawable
nell'API pubblica. (I37f3e, b/227789566) - Viene introdotta una nuova factory per l'inflazione del layout asincrono. (Ia657b)
Correzioni di bug
- Ora
Toolbar
chiameràonPrepareMenu()
prima che venga visualizzato il menu anziché incondizionatamente quando viene creato il menu. (I2a58d, b/232206677) AppCompat
ora dipende esplicitamente daLifecycle
2.5.1
eSavedState
1.2.0
. (I7e3e2)- È stato aggiunto il supporto per il callback invocato da Indietro a
AppCompatDelegate
e all'implementazione della barra degli strumenti fornita daAppCompat
. (I24062) - Finalizzare le API
AppCompat
per 1.5.0-beta01 (I2a43d, b/236866227) - Finalizzare 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 pre-release privato e non ha commit pubblici.
Modifiche all'API
- Aggiornamenti dell'annullabilità in linea con l'API definitiva nell'SDK Tiramisu Beta 3
minCompileSdk
ora è 33 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 pre-release privato, pertanto non è disponibile alcun log dei commit.
Modifiche all'API
- Aggiungere un'API per ignorare la 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 Android 13 Beta 1 per la compilazione e non è garantita la compatibilità di runtime con le future anteprime per sviluppatori.
Nuove funzionalità
- Supporto per la selezione della lingua personalizzata a livello di app tramite
AppCompatDelegate.setApplicationLocales()
. Delega all'implementazione della piattaforma su 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 compilata da un ramo interno e non ha commit visibili pubblicamente.
Questa versione richiede Android Tiramisu DP1 per la compilazione e non è garantita la compatibilità di runtime con le future anteprime per sviluppatori.
Nuove funzionalità
- È stato aggiunto il supporto per la personalizzazione delle impostazioni internazionali dell'applicazione. Consulta
AppCompatDelegate.setApplicationLocales(LocaleListCompat)
per saperne di più. Fornisce la compatibilità con le versioni precedenti per la nuova API per le preferenze per lingua disponibile in 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
AppCompat
ora dipende esplicitamente da Lifecycle2.5.1
e SavedState1.2.0
. (I7e3e2)
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à Notte, correzioni di bug e supporto per la colorazione degli elementi drawable composti per i widget di testo basati su AppCompat, nonché miglioramenti all'usabilità dell'API. Per un elenco dettagliato delle modifiche, consulta le note di rilascio della serie 1.5.0 precedenti.
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
- È stato risolto un problema per cui il wrapper del contesto di AppCompat riutilizzava l'implementazione della risorsa 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 all'API
- Aggiungi un flag sostituibile per disattivare l'aggiustamento della larghezza dell'opzione predefinita. (I37cb7)
- Aggiunta dell'annotazione
@FloatRange
all'API del getter della posizione del pollice (If524c) - Aggiungere le annotazioni mancanti relative alla nullità a
AnimatedStateListDrawableCompat
(Ieb4ec)
Correzioni di bug
- Finalizzare le API
AppCompat
per 1.5.0-beta01 (I2a43d, b/236866227) - Modificare il valore
className
perActionMenuItemView
in modo da trattarlo comeButton
(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 all'API
- È stata aggiunta una nuova API per esporre la posizione del cursore dell'opzione ai sottoclassi (I9bfb4)
- La nullabilità è stata aggiornata in modo da corrispondere a Tiramisu DP2 (I0cbb7)
- Tinta degli elementi drawable composti di cui è stato eseguito il backporting ai widget derivati da TextView (Idf98c, b/165822337)
AppCompatDialog
ora estendeComponentDialog
per la compatibilità conOnBackPressedDispatcher
(Id9b91, b/217620781)- La visibilità di
SearchView.onQueryRefine()
è ora protetta per consentire le sostituzioni (I6cce0, b/212882845)
Correzioni di bug
- AppCompat
Toolbar
ora chiama l'APIonPrepareMenu()
diMenuHostHelper
. (I9b9b5, b/227376894) AppCompatEditText
,AppCompatAutoCompleteEditText
,AppCompatMultiAutoCompleteEditText
non reimpostano più clickable o longClickable nel costruttore se impostati in XML (Ic5066, b/221094907)AppCompatEditText
,AppCompatAutoCompleteTextView
eAppCompatMultiAutoCompleteTextView
non chiamerannosetKeyListener
sostituito durante il costruttore (I5c13a, b/208480173)- AppCompat non eseguirà il wrapping delle istanze di
NumberKeyListener
passate asetKeyListener
, consentendo aTextView
di configurare correttamente le impostazioni internazionali suNumberKeyListeners
(Ibf113, b/207119921) - È stato corretto un problema relativo a tutti i sottoclassi
NumberKeyListener
introdotti in AppCompat 1.4.0 che consentivano di inserire 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
- Risolto un arresto anomalo in cui
AppCompatDelegateImpl
effettuava una chiamata interna aensureSubDecor
prima della creazione della barra di 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
eAppCompatMultiAutoCompleteTextView
non chiameranno la funzione overridensetKeyListener
durante il costruttore. (I5c13a, b/208480173)Emoji2
non eseguirà il wrapping delle istanze diNumberKeyListener
, consentendo di configurare il codice lingua tramite textview.- AppCompat non eseguirà il wrapping delle istanze di
NumberKeyListener
passate asetKeyListener
, consentendo aTextView
di configurare correttamente il codice lingua suNumberKeyListeners
. (Ibf113, b/207119921)
- AppCompat non eseguirà il wrapping delle istanze di
- Corregge il problema relativo a tutti i sottoclassi
NumberKeyListener
introdotti in appcompat 1.4.0 che consentivano di inserire caratteri inaspettati come 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 linguaggio Java 8
- Il supporto delle emoji aggiornabili è abilitato per impostazione predefinita tramite la libreria androidx.emoji2
- Ispezione degli attributi migliorata in Layout Inspector di Android Studio (I02d55)
- È stato aggiunto il supporto per le risorse colorate nidificate e gli elementi drawable vettoriali nei backport del caricamento delle risorse AppCompat. Tieni presente, tuttavia, che ciò significa che le app non possono sostituire getDrawable() in un oggetto Resources personalizzato quando i backport sono abilitati. (Ia6b03, b/176129022)
- Sfondo tintable e segno di spunta di CheckedTextView sottoposti a backport (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 all'API
- AndroidX AppCompat
Toolbar
ora è unMenuHost
e può gestire iMenuProvider
. (I5cd95)
Correzioni di bug
- È stato corretto il trattamento delle barre di avanzamento dell'elenco di livelli da parte di AppCompatProgressBar (I6ece3, b/142004509)
- Mantieni correttamente
android:digits
inAppCompatEditText
, questo corregge il bug 193047889 introdotto in AppCompat 1.4.0-alpha03. (I4b4fc, b/193047889) - SDK OnReceiveContentListener integrato e API lib di supporto. (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 linguaggio Java 8
- Aggiunta del supporto di emoji2 per altri sottoclassi di TextView (
AppCompatMultiAutoCompleteTextView
,AppCompatAutoCompleteTextView
,AppCompatRadioButton
,AppCompatCheckBox
).
Modifiche all'API
- È stata aggiunta un'API per configurare un InputConnection in modo da utilizzare View.performReceiveContent per gestire le chiamate IME a InputConnection.commitContent. (I3a2ad)
- Aggiungere il supporto di EmojiCompat a
AppCompatMultiAutoCompleteTextView
(Ifece0) - Aggiungere il supporto di EmojiCompat a
AppCompatAutoCompleteTextView
(Ia1f4b) - Aggiungere il supporto di EmojiCompat a
AppCompatRadioButton
(If08af) - Aggiungere il supporto di EmojiCompat a
AppCompatCheckBox
(I2b3bc) - Consenti
KeyListener
null inAppCompatEditText
. Questo annulla l'annotazione non nullo aggiunta ad AppCompatEditText nella versione 1.4-alpha01 e ripristina il comportamento precedente quando viene passato null. (I21482, b/189559345) - Aggiungi
PopupMenu.setForceShowIcon
per la parità con le API di piattaforma (I43bb3, b/182789798)
Correzioni di bug
- Bug fix in AppCompatEditText che reimposta il valore 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 all'API
- È stato aggiunto il costruttore
AppCompatDialogFragment
che accetta un ID layout (Icbf22, b/188119987) - Supporto migliorato per l'ispettore layout (I02d55)
- Il pacchetto in
emoji2-views-helper
è stato rinominato inandroidx.emoji2.viewsintegration
. Si tratta di una modifica che comporta una interruzione del servizio per AppCompat1.4.0-alpha01
e le app devono assicurarsi che la dipendenza da AppCompat sia aggiornata per poter utilizzare la nuova versione di emoji2. (Ie8397)
Correzioni di bug
- È stato risolto un problema per cui le attività interrotte non ricevevano modifiche di configurazione dalle modifiche della modalità notturna con strumenti AppCompat. (I8fa8f, b/188681415)
- È stato corretto un bug in
AppCompatEditText
che causava la possibilità di mettere in primo piano le visualizzazioni anche quandoandroid:focusable="false"
era specificato nel file XML (bug introdotto in AppCompat1.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 all'API
- Supporto di EmojiCompat integrato in una serie di widget AppCompat (Id409b, If7a1a, Ic262d, Ib5f4a, I4fb3c)
- È stato aggiunto il supporto per le risorse colorate nidificate e gli elementi drawable vettoriali nei backport del caricamento delle risorse AppCompat. Tieni presente, tuttavia, che ciò significa che le app non possono sostituire
getDrawable()
in un oggetto Resources personalizzato quando i backport sono abilitati. (Ia6b03, b/176129022) - Supporto migliorato per l'ispettore layout (I6d771)
Correzioni di bug
- È stato corretto uno scenario in cui l'utilizzo di setSupportActionBar dopo l'impostazione del callback della finestra sovrascriveva il callback. (Ie43ee, b/186791590)
- È stata aggiunta una soluzione alternativa per un problema relativo agli SDK 29 e 30 in cui le risorse ColorStateListDrawable clonate dalla cache drawable non caricano un colore predefinito finché non ricevono una modifica dello stato. (Iedb4b)
- Evitare errori NPE durante la gestione dei callback della modalità di azione di selezione personalizzata nullo nelle visualizzazioni basate su AppCompat. (I033c7, b/173435375)
Aggiornamenti delle dipendenze
- Da AppCompat
1.5.0
: ora AppCompat dipende da Fragment Fragment1.3.4
. (I13089) - Da AppCompat
1.5.0
: ora AppCompat dipende da Activity1.2.3
. (I815b7) - Da AppCompat
1.5.0
: ora AppCompat dipende da Lifecycle2.3.1
. (Ia75a1)
Contributo esterno
- Backport di sfondo colorabile 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
- Ora AppCompat dipende da Activity
1.2.4
e Fragment1.3.6
, pertanto le correzioni di queste release sono incluse per impostazione predefinita quando si utilizza AppCompat1.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
nei layout<include>
d sui dispositivi precedenti a Lollipop - Dimensioni della libreria ridotte mediante la conversione di molte risorse PNG in VectorDrawables
- È stato aggiunto il supporto per gli eventi di trascinamento a
AppCompatEditText
conOnReceiveContentListener
- Aggiornamento per supportare le modifiche alla gestione dell'inset della finestra di Android 11
- È stato aggiunto il supporto per l'RTL negli elementi del menu con icone
È stato aggiunto il supporto per l'inserimento di contenuti avanzati (ad es. incollando un'immagine) in
AppCompatEditText
Dipendenze aggiornate:
appcompat
ha aggiornato molte delle sue dipendenze transitorie per supportare nuove funzionalità e correzioni:- Aggiornamento da frammento
1.1.0
a frammento1.3.4
- Aggiornamento da Activity 1.0.0 ad Activity
1.2.3
- Aggiornamento da Ciclo di vita
2.0.0
a Ciclo di vita2.3.1
. - Aggiornamento da Core 1.3.0 a Core
1.5.0
- Aggiornamento da frammento
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
- AppCompat ora dipende da Activity
1.2.2
, Fragment1.3.2
e Lifecycle2.3.1
. (Ia75a1)
Contributo esterno
- È stata corretta la propagazione dell'attributo
android:theme
nei layout<include>
d sui dispositivi precedenti a Lollipop (Simon Bergner di 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à
- Gli elementi drawable della modalità di azione a livello di tema sono stati sostituiti con origini vettoriali. Ciò potrebbe causare lievi modifiche all'aspetto visivo delle singole icone. (I741a6)
Modifiche all'API
- È stato integrato il trascinamento (eventi drop) in AppCompatEditText con OnReceiveContentListener. (Ib26c9, b/175343405)
OnReceiveContentListener
e le API correlate sono state aggiornate. Per ulteriori dettagli, consulta le modifiche alla libreria androidx.core. (Ib4616, b/173814913)- widget.RichContentReceiverCompat è stato spostato in view.OnReceiveContentListener. (Ifdab7, b/173814913)
- Le API per fornire e recuperare il testo iniziale circostante sono state sottoposte a backport a
EditorInfoCompat
. Consentono alle app IME di evitare una latenza IPC aggiuntiva. (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
- Gli elementi drawable PNG di AppCompatRatingBar sono stati sostituiti da origini vettoriali. Ciò potrebbe causare lievi variazioni nell'aspetto visivo delle singole stelle. (I6b99d)
- Aggiorna WindowInsetsCompat alle API Android 11 (I3df9e)
- Supporto dell'RTL negli elementi del menu con icone (I2f5c5)
Aggiornamenti delle dipendenze
- AppCompat ha aggiornato la dipendenza da Fragment
1.1.0
a Fragment1.3.0-alpha08
. Ti consigliamo vivamente di leggere le note di rilascio di Fragment1.2.0
per comprendere le modifiche principali introdotte nella precedente release di Fragment. - AppCompat ha aggiornato la dipendenza da Attività
1.0.0
ad Attività1.2.0-alpha08
. Ti consigliamo vivamente di leggere le note di rilascio di Attività1.1.0
per comprendere le modifiche principali introdotte nella release precedente di Attività.AppCompatActivity
ora utilizza l'APIOnContextAvailableListener
introdotta in Attività1.2.0-alpha08
per configurareAppCompatDelegate
. Eventuali listener aggiunti alle sottoclassi diAppCompatActivity
verranno eseguiti 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à
- Aggiungere una nuova regola Lint per segnalare le chiamate a setActionBar nelle attività che estendono AppCompatActivity
- È stato aggiunto il supporto per
ViewTreeLifecycleOwner
da Lifecycle2.3.0-alpha01
,ViewTreeViewModelStoreOwner
da Lifecycle2.3.0-alpha03
eViewTreeSavedStateRegistryOwner
da SavedState1.1.0-alpha01
quando si utilizza unView
all'interno di unAppCompatActivity
. (b/151603528, aosp/1300264) - Aggiungi un'API comune per l'inserimento di contenuti avanzati (ad es. incollando un'immagine). Il nuovo callback fornisce un'unica 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 di codice:- Incolla dagli appunti
- Inserzione di contenuti dall'IME (
InputConnection.commitContent
) (I22bf7)
Correzioni di bug
- Da AppCompat
1.2.0-rc01
: AppCompat non chiama piùonMenuOpened()
con un menunull
. (b/142843126) - Risolvere correttamente i colori dei link e dei suggerimenti di testo sui dispositivi meno recenti quando viene chiamato TextViewCompat.setTextAppearance con uno stile di aspetto del testo che contiene elenchi di stato del colore che fanno riferimento agli attributi del colore 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.
Modifiche principali dalla versione 1.1.0
- È stato corretto il supporto per i casi d'uso di override della configurazione, tra cui le impostazioni internazionali e le scale dei caratteri personalizzate. Qui puoi trovare un esempio di come implementare correttamente le sostituzioni utilizzando
appcompat:1.2.0
. AppCompatDelegate.attachBaseContext()
obsoleto. Se chiami o sostituisci questo metodo, utilizzaAppCompatDelegate.attachBaseContext2()
.CollapsibleActionView
obsoleto. Questa interfaccia non è più necessaria, utilizza l'interfacciaandroid.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
- È stato risolto un problema relativo alla modalità notturna per cui, a volte, l'attivazione di
AppCompatDelegate.setDefaultNightMode
da una finestra di dialogo non riusciva a ricreare le attività e ad 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 all'API
AppCompatDelegate.setLocalNightMode
è stato contrassegnato come richiedente la versione 17 o successive dell'SDK a causa di un problema della piattaforma con la fuga di modifiche alla configurazione tra le attività negli SDK precedenti
Correzioni di bug
- Ora
AppCompatDelegate.setLocalNightMode
può essere chiamato prima diActivity.attachBaseContext
- È stato corretto il consumo degli inserti
ActionBarOverlayLayout
che utilizzavano in modo errato gli inserti memorizzati nella cache - AppCompat non chiama più
onMenuOpened()
con un menunull
. (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 seguenti nuove regole lint che segnalano utilizzi errati di AppCompat nei seguenti scenari:
- Caricamento degli elenchi degli stati di colore: si consiglia di utilizzare le API
ContextCompat
eAppCompatResources
per la compatibilità con le versioni precedenti - Caricamento di drawable: si consiglia di utilizzare le API
ContextCompat
eResourcesCompat
per la compatibilità con le versioni precedenti - Utilizzo di elenchi di stati di colore con attributo alpha: gli indicatori mancanti dell'attributo
android:alpha
determinano un aspetto errato su alcune versioni della piattaforma - Tinting image views: flags not using
app:tint
that will lead to incorrect appearance on older platform versions - Utilizzo di drawable composti e colorazione nelle visualizzazioni di testo: suggerisce di utilizzare attributi e API compatibili per la compatibilità con le versioni precedenti
- Caricamento degli elenchi degli stati di colore: si consiglia di utilizzare le API
Correzioni di bug
- Risolto un problema per cui
ActionBarOverlayLayout
(azione di decorazione della finestra) non inviava correttamente WindowInsets. - Sono stati risolti i problemi relativi alla colorazione degli elementi Drawable e all'aspetto del testo nelle versioni precedenti della piattaforma
- È stato risolto un problema per cui
androidx.appcompat:appcompat:1.1.0
arresta in modo anomalo WebView quando viene premuto a lungo (b/141351441) - Sono state implementate correzioni 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
- È stato risolto un problema per cui la guardia dello stato della modalità di azione si estendeva erroneamente nella barra di navigazione e aveva il colore sbagliato (Ia4a09)
- Risolto il problema per cui le attività interrotte non riprendevano nel livello API 23 e versioni precedenti (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
- È stato risolto il problema per cui appcompat 1.1.0 arresta in modo anomalo WebView con una pressione prolungata (b/141351441)
- È stato corretto il colore dei drawable in TextView rispetto ai drawable composti a livello API 23 (aosp/1172194)
- È stato garantito che il contesto di base sia sempre un wrapper (aosp/1194355)
- Sono stati aggiunti alcuni miglioramenti per essere più intelligenti durante la modifica della configurazione del contesto di base (aosp/1204543)
createConfigurationContext()
disattivato 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à rigorosa con i controlli attenti all'avvio abilitati
- Correzioni per la colorazione degli elementi Drawable su AppCompatButton
- Correzioni per la colorazione e l'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 alla modalità Buio:
MODE_NIGHT_AUTO
e il passaggio da modalità Buio/Chiara in base all'ora corrente non sono più supportati. Valuta la possibilità di utilizzare un'impostazione esplicita oMODE_NIGHT_AUTO_BATTERY
. - Attività 1.0:
AppCompatActivity
ora si estende in modo transitivo daComponentActivity
dell'attività1.0.0
tramite il componente1.1.0
. Consulta le note di rilascio associate per informazioni sulle modifiche in ogni libreria. - Costruttore LayoutId di AppCompatActivity: ora i sottoclassi di
AppCompatActivity
possono, facoltativamente, chiamare un costruttore inAppCompatActivity
che accetta un IDR.layout
, indicando il layout da impostare come visualizzazione dei contenuti come alternativa alla chiamata disetContentView()
inonCreate()
. Ciò non cambia il requisito che la sottoclasse abbia un costruttore senza argomenti.
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 destinatari in AppCompatDialogs (aosp/959376)
- Aggiunta del supporto per
buttonGravity=center_vertical
nella barra degli strumenti (b/130361721) - Correggere l'offset orizzontale del cursore (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à
- setDefaultNightMode() ora ricrea automaticamente tutte le attività avviate.
Correzioni di bug
- Varie correzioni alla modalità Giorno/Notte
- Annullare l'outline in caso di modifica dello sfondo nell'ActionBar
- Correggere lo scorrimento del widget di scorrimento
- Correggere l'override degli sfondi delle finestre impostati in modo personalizzato 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 utilizzati quando si utilizza la funzionalità Giorno/Notte.
Modifiche all'API
- AppCompatActivity ora contiene un secondo costruttore che accetta un
@LayoutRes int
, che sostituisce il comportamento precedente di annotare il tuo classe AppCompatActivity con@ContentView
. Questo approccio funziona sia nei moduli di app che di libreria. (b/128352521)
Correzioni di bug
- Dipendenze interne bloccate alle versioni stabili, se possibile
- È stato corretto lo
AppCompatSpinner
scorrimento in modalità a discesa )b/124274573) - Chiama
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 gli elementi drawable (inclusi gli elementi drawable vettoriali) sulle versioni precedenti della piattaforma. Si tratta della stessa funzionalità che in precedenza faceva parte del modulo appcompat, ma ora è disponibile senza il sovraccarico del backport completo di appcompat di Material Design che include widget, finestre di dialogo, modalità notturna e così via.
- Correzioni importanti al supporto della modalità Giorno/Notte
- Nuova opzione
MODE_NIGHT_AUTO_BATTERY
per la modalità Giorno/Notte - Colorazione di Drawable in
AppCompatTextView
- Ora è possibile applicare uno stile allo spazio extra della barra degli strumenti con elenchi di stati di colore a tema
- Ora le icone del 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 i contenuti del menu al momento dell'inflazione
Correzioni di bug
- È stata corretta la modalità di tinta predefinita in ImageView nella versione 21
- È stato corretto il problema di chiusura errata del popup della rotellina durante la rotazione del dispositivo
- La modalità Giorno/Notte fissa non rispetta
configChanges
nel file manifest - È stato corretto il problema di mancata attivazione del passaggio a
MODE_NIGHT_FOLLOW_SYSTEM
(b/111345020) - È stato corretto il problema per cui WebView reimposta le risorse DayNight (b/37124582)
Versione 1.1.0-alpha02
7 febbraio 2019
androidx.appcompat:appcompat 1.1.0-alpha02
viene rilasciato.
Nuove funzionalità
- È stato estratto il trattamento di drawable specifico per risorsa in un hook (aosp/870976)
- È stato consentito a
titleTextColor
esubtitleTextColor
della barra degli strumenti di utilizzare unColorStateList
e sono stati aggiunti sovraccarichiColorStateList
dei metodisetTitleTextColor
esetSubtitleTextColor
(aosp/867489)
Correzioni di bug
- È stato corretto il problema di mancata funzionalità di
fontFamily
nelle versioni precedenti all'API 24 (aosp/807054) - È stato corretto un bug per cui
textFontWeight
non funzionava quando un'attività si estendeva daAppCompatActivity
(aosp/847640) - È stato corretto un bug che causava l'utilizzo del carattere specificato nel file
fontFamily
(aosp/789994) per il testo del titolo nel popup del widget di cursore (quando si utilizza la modalità di dialogo). - Correggere il bug che impediva ai widget
AppCompatCheckBox
eAppCompatRadioButton
di modificare la tonalità di sfondo (aosp/825160) - È stato corretto un bug a causa del quale AppCompat non ha sostituito
android: list styles
(aosp/862350)
Versione 1.1.0-alpha01
3 dicembre 2018
Nuove funzionalità
AppCompatTextView ora supporta gli elementi drawable composti
app:drawableLeftCompat
,app:drawableTopCompat
,app:drawableRightCompat
,app:drawableBottomCompat
,app:drawableStartCompat
eapp:drawableEndCompat
, supportando i tipi di drawable di cui è stato eseguito il backporting, comeVectorDrawableCompat
.Gli elementi drawable predefiniti di
AppCompatCheckBox
eAppCompatRadioButton
ora animano le modifiche dello stato di controllo.
Modifiche all'API
- aosp/740385:
ActionBarOverlayLayout ora implementa NestedScrollingParent2 e
NestedScrollingParent3, il che gli consente di facilitare le funzionalità più recenti
nello scorrimento nidificato 3. Se il codice sviluppatore attualmente sostituisce
ActionBarOverLayLayout.onNestedScroll(View, int, int, int, int)
, probabilmente non verrà più chiamato e dovrebbe essere sostituitaActionBarOverLayLayout.onNestedScroll(View, int, int, int, int, int, int[])
.
Versione 1.0.2
Versione 1.0.2
7 novembre 2018
Release con correzione di bug di core-1.0.1
e appcompat-1.0.2
.
Correzioni di bug
- È stato corretto un bug per cui
PrecomputedTextCompat
si arrestava in modo anomalo se utilizzato con RTLAppCompatTextView
. b/113070424
Versione 1.0.0
Versione 1.0.0
7 novembre 2018
Nuove funzionalità
AnimatedStateListDrawableCompat
fornisce transizioni animate tra gli stati disegnabili.