Crea animazione
androidx.compose.animation
androidx.compose.animation.core
androidx.compose.animation.graphics
(consulta la documentazione di riferimento delle API per tutti i pacchetti di scrittura)
Aggiornamento più recente | Release stabile | Candidato per l'uscita | Versione beta | Release alpha |
---|---|---|---|---|
7 agosto 2024 | 1.6.8 | - | 1.7.0-beta07 | - |
Struttura
Compose è una combinazione di 7 ID gruppo Maven all'interno di androidx
. Ogni gruppo
contiene un sottoinsieme di funzionalità target, ciascuna con il proprio insieme di funzionalità
note.
Questa tabella illustra i gruppi e i link a ciascun insieme di note di rilascio.
Gruppo | Descrizione |
---|---|
compose.animation | Sviluppa animazioni nelle applicazioni Jetpack Compose per arricchire l'esperienza utente. |
compose.compiler | Trasforma le funzioni @Composable e abilita le ottimizzazioni con un plug-in del compilatore Kotlin. |
compose.foundation | Scrivi applicazioni Jetpack Compose con componenti di base pronti all'uso ed estende le basi per creare i tuoi componenti di sistema di progettazione. |
compose.material | Crea UI di Jetpack Compose con componenti Material Design pronti per l'uso. Si tratta del punto di ingresso di livello superiore di Compose, progettato per fornire componenti corrispondenti a quelli descritti all'indirizzo www.material.io. |
compose.material3 | Crea UI di Jetpack Compose con Material Design 3 Components, la prossima evoluzione di Material Design. Material 3 include temi e componenti aggiornati, nonché funzionalità di personalizzazione di Material You, come il colore dinamico, ed è progettato per essere coerente con il nuovo stile visivo e la nuova UI di sistema di Android 12. |
compose.runtime | Componenti di base di base del modello di programmazione e della gestione dello stato di Compose, nonché del runtime principale per il targeting del plug-in Compose Compiler. |
compose.ui | I componenti fondamentali dell'UI di scrittura necessari per interagire con il dispositivo, tra cui layout, disegno e input, |
Dichiarazione delle dipendenze
Per aggiungere una dipendenza su Compose, devi aggiungere il Repository Maven di Google al tuo progetto. Consulta il Repository Maven di Google per ulteriori informazioni.
Aggiungi le dipendenze per gli artefatti necessari nel file build.gradle
per
l'app o il modulo:
Trendy
dependencies { implementation "androidx.compose.animation:animation:1.6.8" } android { buildFeatures { compose true } composeOptions { kotlinCompilerExtensionVersion = "1.5.15" } kotlinOptions { jvmTarget = "1.8" } }
Kotlin
dependencies { implementation("androidx.compose.animation:animation:1.6.8") } android { buildFeatures { compose = true } composeOptions { kotlinCompilerExtensionVersion = "1.5.15" } kotlinOptions { jvmTarget = "1.8" } }
Per saperne di più sulle dipendenze, consulta Aggiungere dipendenze build.
Feedback
Il tuo feedback ci aiuta a migliorare Jetpack. Non esitare a contattarci in caso di nuovi problemi o idee per migliorare questa raccolta. Dai un'occhiata alle problemi esistenti in questa raccolta, prima di crearne uno nuovo. Puoi aggiungere il tuo voto a un problema esistente tramite facendo clic sul pulsante a forma di stella.
Consulta la documentazione di Issue Tracker per ulteriori informazioni.
Versione 1.7
Versione 1.7.0-beta07
7 agosto 2024
Viene rilasciato androidx.compose.animation:animation-*:1.7.0-beta07
. La versione 1.7.0-beta07 contiene questi commit.
Correzioni di bug
- È stato risolto il problema di
SharedTransitionScope
che non tracciava elementi overlay durante la transizione in determinate condizioni, che in genere includono l'utilizzo con la navigazione. (Id65ab, b/347520198)
Versione 1.7.0-beta06
24 luglio 2024
Viene rilasciato androidx.compose.animation:animation-*:1.7.0-beta06
. La versione 1.7.0-beta06 contiene questi commit.
Correzioni di bug
- È stato corretto il problema di perdita degli stati di transizione di
SeekableTransition
eliminando correttamente le osservazioni daSnapshotStateObserver
quando la transizione è stata eliminata. (b9c7182). - Risolti i casi limite in cui le transizioni secondarie non vengono contrassegnate correttamente come completate quando l'elemento principale è stato completato. (dc42216)
Versione 1.7.0-beta05
10 luglio 2024
Viene rilasciato androidx.compose.animation:animation-*:1.7.0-beta05
. La versione 1.7.0-beta05 contiene questi commit.
Correzioni di bug
- Ora la proprietà di transizione
totalDurationNanos
può essere letta correttamente all'interno di unsnapshotFlow
.
Versione 1.7.0-beta04
26 giugno 2024
Viene rilasciato androidx.compose.animation:animation-*:1.7.0-beta04
. La versione 1.7.0-beta04 contiene questi commit.
Versione 1.7.0-beta03
12 giugno 2024
Viene rilasciato androidx.compose.animation:animation-*:1.7.0-beta03
. La versione 1.7.0-beta03 contiene questi commit.
Versione 1.7.0-beta02
29 maggio 2024
Viene rilasciato androidx.compose.animation:animation-*:1.7.0-beta02
. La versione 1.7.0-beta02 contiene questi commit.
Versione 1.7.0-beta01
14 maggio 2024
Viene rilasciato androidx.compose.animation:animation-*:1.7.0-beta01
. La versione 1.7.0-beta01 contiene questi commit.
Modifiche alle API
- Nuovo
resizeModes
(ScaleToBounds
eRemeasureToBounds
) persharedBounds
per scegliere tra la scalabilità e la nuova misurazione. Le APIscaleIn/OutSharedContentToBounds
precedenti sono ora deprecate. (I0d41a)
Contributo esterno
- La funzionalità
SharedTransitionScope
sperimentale è ora un'interfaccia anziché una classe. (Iaf856, b/338415048, b/338414702)
Versione 1.7.0-alpha08
1° maggio 2024
Viene rilasciato androidx.compose.animation:animation-*:1.7.0-alpha08
. La versione 1.7.0-alpha08 contiene questi commit.
Modifiche alle API
LookaheadScope
API sono state rese stabili. (I21507)
Contributo esterno
- Cancella il tempo di avvio dell'animazione dopo l'animazione/gli snapshot di
SeekableTransitionState
eseguiti da Steven Schoen (1ca89529)
Versione 1.7.0-alpha07
17 aprile 2024
Viene rilasciato androidx.compose.animation:animation-*:1.7.0-alpha07
. La versione 1.7.0-alpha07 contiene questi commit.
Nuove funzionalità
- Le nuove API di transizione degli elementi condivisi attendono il tuo utilizzo e il tuo feedback. Queste nuove API sperimentali consentono di taggare i layout come condivisi nella struttura ad albero dei layout utilizzando i modificatori forniti, producendo limiti che cambiano facilmente quando un insieme di contenuti condivisi esce e viene inserito l'altro insieme. (Icb0b9)
- Nuovi
scaleInSharedContentToBounds
escaleOutSharedContentToBounds
per scalare i contenuti insharedBounds
(I731c1)
Modifiche alle API
- Ora
AnimatedVisibilityScope.transition
è un'API stabile. AncheModifier.animateEnterExit(..)
è stata resa stabile. (I6c1d1). ApproachLayoutModifierNode
eModifier.approachLayout
ora sono stabili, con i nuoviisMeasurementApproachInProgress()
eisPlacementApproachInProgress()
che sostituiscono rispettivamente i vecchiisMeasurementApproachComplete()
eisPlacementApproachComplete()
.- Modificatore
intermediateLayout
deprecato rimosso. (I3e91c). - Ora puoi passare un valore
periodicBias
(in virgola mobile) akeyframesWithSpline
, in modo che la velocità iniziale e finale dello spline siano uguali. Utile per animazioni ripetibili tramite spline. Il bias indica di quanto ogni velocità (iniziale e finale) viene modificata per ottenere la periodicità. (Ic1e6c, b/292114811)
Correzioni di bug
- Corrette le curve di easing over-shooting e under-shooting che in precedenza sarebbero state bloccate a 0..1 (I38747)
Versione 1.7.0-alpha06
3 aprile 2024
Viene rilasciato androidx.compose.animation:animation-*:1.7.0-alpha06
. La versione 1.7.0-alpha06 contiene questi commit.
Nuove funzionalità
- Il supporto dell'animazione per l'aspetto e la scomparsa dell'elemento è stato aggiunto in
LazyColumn
eLazyRow
. In precedenza era possibile aggiungere il modificatoreModifier.animateItemPlacement()
per supportare le animazioni di posizionamento (riordinamento). Abbiamo ritirato questo modificatore e introdotto un nuovo modificatore non sperimentale chiamatoModifier.animateItem()
che consente di supportare tutti e tre i tipi di animazione: aspetto (dissolvenza in entrata), scomparsa (dissolvenza in uscita) e riordinamento. (I2d7f7, b/330152398, b/150812265)
Correzioni di bug
- Prestazioni dell'API
updateTransition
migliorate.
Versione 1.7.0-alpha05
20 marzo 2024
Viene rilasciato androidx.compose.animation:animation-*:1.7.0-alpha05
. La versione 1.7.0-alpha05 contiene questi commit.
Modifiche alle API
SeekableTransitionState
sostituiscesnapTo()
conseekTo()
e aggiunge unsnapTo()
che modifica immediatamente lo stato in uno stato di destinazione senza alcun tipo di animazione.
Versione 1.7.0-alpha04
6 marzo 2024
Viene rilasciato androidx.compose.animation:animation-*:1.7.0-alpha04
. La versione 1.7.0-alpha04 contiene questi commit.
Modifiche alle API
- Nuova API
Path.reverse()
per invertire la direzione di un percorso (I36348)
Versione 1.7.0-alpha03
21 febbraio 2024
Viene rilasciato androidx.compose.animation:animation-*:1.7.0-alpha03
. La versione 1.7.0-alpha03 contiene questi commit.
Nuove funzionalità
- Nuovo
Modifier.animateContentSize
che richiede un parametro aggiuntivo per l'allineamento personalizzato dei contenuti. (I5623a, b/269803907) - Nuovo oggetto
DeferredTargetAnimation
sperimentale per l'animazione di dimensioni, posizione o altri target sconosciuti durante la creazione dell'istanza. (I60745)
Versione 1.7.0-alpha02
7 febbraio 2024
Viene rilasciato androidx.compose.animation:animation-*:1.7.0-alpha02
. La versione 1.7.0-alpha02 contiene questi commit.
Correzioni di bug
- Correzione di compatibilità per
KeyframesSpec
. (I2bdf3, b/322214617) - È stato risolto il problema di reimpostazione di
Modifier.animateContentSize
in uso inLazyList
. (I070512, b/322525716) - È stato corretto il problema
IllegalStateException
inKeyframesSpec
quando si utilizzavano timestamp fuori intervallo. (I341b8, b/322839811)
Versione 1.7.0-alpha01
24 gennaio 2024
Viene rilasciato androidx.compose.animation:animation-*:1.7.0-alpha01
. La versione 1.7.0-alpha01 contiene questi commit.
Versione 1.6
Versione 1.6.8
12 giugno 2024
Viene rilasciato androidx.compose.animation:animation-*:1.6.8
. La versione 1.6.8 contiene questi commit.
Versione 1.6.7
1° maggio 2024
Viene rilasciato androidx.compose.animation:animation-*:1.6.7
. La versione 1.6.7 contiene questi commit.
Versione 1.6.6
17 aprile 2024
Viene rilasciato androidx.compose.animation:animation-*:1.6.6
. Nessuna modifica dalla release precedente
Versione 1.6.5
3 aprile 2024
Viene rilasciato androidx.compose.animation:animation-*:1.6.5
. La versione 1.6.5 contiene questi commit.
Versione 1.6.4
20 marzo 2024
Viene rilasciato androidx.compose.animation:animation-*:1.6.4
. La versione 1.6.4 contiene questi commit.
Versione 1.6.3
6 marzo 2024
Viene rilasciato androidx.compose.animation:animation-*:1.6.3
. La versione 1.6.3 contiene questi commit.
Versione 1.6.2
21 febbraio 2024
Viene rilasciato androidx.compose.animation:animation-*:1.6.2
. La versione 1.6.2 contiene questi commit.
Versione 1.6.1
7 febbraio 2024
Viene rilasciato androidx.compose.animation:animation-*:1.6.1
. La versione 1.6.1 contiene questi commit.
Correzioni di bug
- Correzione di compatibilità per
KeyframesSpec
. (I2bdf3, b/322214617)
Versione 1.6.0
24 gennaio 2024
Viene rilasciato androidx.compose.animation:animation-*:1.6.0
. La versione 1.6.0 contiene questi commit.
Versione 1.6.0-rc01
10 gennaio 2024
Viene rilasciato androidx.compose.animation:animation-*:1.6.0-rc01
. La versione 1.6.0-rc01 contiene questi commit.
Versione 1.6.0-beta03
13 dicembre 2023
Viene rilasciato androidx.compose.animation:animation-*:1.6.0-beta03
. La versione 1.6.0-beta03 contiene questi commit.
Modifiche alle API
- Abbiamo rimosso temporaneamente
scaleInToFitContainer
escaleOutToFitContainer
daAnimatedContentTransitionScope
perché richiedono la previsione. Saranno disponibili quando la funzionalità lookahead sarà attivata per impostazione predefinita o sarà attivata nelle release future.
Versione 1.6.0-beta02
29 novembre 2023
Viene rilasciato androidx.compose.animation:animation-*:1.6.0-beta02
. La versione 1.6.0-beta02 contiene questi commit.
Versione 1.6.0-beta01
15 novembre 2023
Viene rilasciato androidx.compose.animation:animation-*:1.6.0-beta01
. La versione 1.6.0-beta01 contiene questi commit.
Modifiche alle API
ExitTransition.Hold
è stato rinominato inExitTransition.KeepUntilTransitionsFinished
per essere più esplicito. (I1c490)- Ora puoi utilizzare
keyframesWithSpline
per interpolare qualsiasi valore n-dimensionale utilizzando gli spline monotonici. È particolarmente utile interpolare valori di posizione comeOffset
,IntOffset
eDpOffset
. Aggiunta come API sperimentale.
Correzioni di bug
- Aggiungi il supporto del renderer per Sweep Gradient in
ArcLine
. (I4d5bb) - Implementa gli stessi valori e il codice hash per
PageSize.Fixed
. (Ie3ede, b/300134276) - Risolvi il problema di compatibilità binaria con la modifica degli elementi di Windows. (Iee695)
- Rimuovi lo strato interno del materiale per chip/tasto Material3, poiché in questo caso i microbenchmark mostrano prestazioni migliori. (I55555)
Versione 1.6.0-alpha08
18 ottobre 2023
Viene rilasciato androidx.compose.animation:animation-*:1.6.0-alpha08
. La versione 1.6.0-alpha08 contiene questi commit.
Modifiche alle API
KeyframesSpecConfig#with
deprecato a favore diKeyframesSpecConfig#using
che conserva il pattern del builder. (I1d769)
Versione 1.6.0-alpha07
4 ottobre 2023
Viene rilasciato androidx.compose.animation:animation-*:1.6.0-alpha07
. La versione 1.6.0-alpha07 contiene questi commit.
Modifiche alle API
- I Tabrow corretti e a scorrimento ora hanno varianti principali e secondarie. Questi valori vengono mappati correttamente al colore e al comportamento dell'indicatore come definito in Material3.
PrimaryScrollableTabRow
eSecondaryScrollableTabRow
ora mostrano lo stato di scorrimento. (Iec8f5, b/260572337)
Versione 1.6.0-alpha06
20 settembre 2023
Viene rilasciato androidx.compose.animation:animation-*:1.6.0-alpha06
. La versione 1.6.0-alpha06 contiene questi commit.
Versione 1.6.0-alpha05
6 settembre 2023
Viene rilasciato androidx.compose.animation:animation-*:1.6.0-alpha05
. La versione 1.6.0-alpha05 contiene questi commit.
Modifiche alle API
- È stato aggiunto
PathEasing
per consentire l'invio di un percorso arbitrario a una curva di easing. (Idb4b9)
Versione 1.6.0-alpha04
23 agosto 2023
Viene rilasciato androidx.compose.animation:animation-*:1.6.0-alpha04
. La versione 1.6.0-alpha04 contiene questi commit.
Modifiche alle API
- Aggiungi
SeekableTransitionState
per consentire agli sviluppatori di controllare l'avanzamento di una transizione. (I8e69d).
Versione 1.6.0-alpha03
9 agosto 2023
Viene rilasciato androidx.compose.animation:animation-*:1.6.0-alpha03
. La versione 1.6.0-alpha03 contiene questi commit.
Modifiche alle API
- Nuovo tipo di transizione entrata/uscita che scala i contenuti in base alle dimensioni del contenitore animato durante i comandi di entrata e uscita esce dall'animazione.
LookaheadScope
Il divertimento e l'interfaccia componibili ora sono stabili. (Ifb2ce).
Versione 1.6.0-alpha02
26 luglio 2023
Viene rilasciato androidx.compose.animation:animation-*:1.6.0-alpha02
. La versione 1.6.0-alpha02 contiene questi commit.
Modifiche alle API
- Nuovo
ExitTransition.Hold
per visualizzare i contenuti in uscita inAnimatedContent
fino a quando in entrata e in uscita la transizione di uscita è terminata. (I5984f) - Annotazioni aggiuntive per specificare gli input consentiti per i componibili (I51109)
Versione 1.6.0-alpha01
21 giu 2023
Viene rilasciato androidx.compose.animation:animation-*:1.6.0-alpha01
. La versione 1.6.0-alpha01 contiene questi commit.
Nuove funzionalità
- Attiva l'integrazione completa di
Modifier.animateContentSize
eAnimatedVisibility
nel sistema lookahead segnalando la dimensione target nel pass lookahead.
Modifiche alle API
- Nuova proprietà in
IntrinsincMeasureScope
e relative implementazioni (ad es.MeasureScope
) per indicare se la valutazione corrente è un passaggio lookahead. (I7a812)
Correzioni di bug
- Rimosse le allocazioni dalle animazioni primaverili. (Ie9431)
- nome del parametro value per Enum.valueOf modificato (Ia9b89)
- Altre eccezioni generate dall'enum valueOf (I818fe)
Versione 1.5
Versione 1.5.4
18 ottobre 2023
Viene rilasciato androidx.compose.animation:animation-*:1.5.4
. La versione 1.5.4 contiene questi commit.
Versione 1.5.3
4 ottobre 2023
Viene rilasciato androidx.compose.animation:animation-*:1.5.3
. Questa versione non ha modifiche
Versione 1.5.2
27 settembre 2023
Viene rilasciato androidx.compose.animation:animation-*:1.5.2
. La versione 1.5.2 contiene questi commit.
Versione 1.5.1
6 settembre 2023
Viene rilasciato androidx.compose.foundation:foundation-*:1.5.1
. La versione 1.5.1 contiene questi commit.
Correzioni di bug
- Campi di testo corretti che mostrano la tastiera e possono essere modificati quando il criterio
readOnly
è impostato su true. È stato inoltre corretto il problema di visualizzazione della tastiera quando il valore direadOnly
viene modificato da vero a falso durante lo stato attivo. (I34a19, b/246909589)
Versione 1.5.1
6 settembre 2023
Viene rilasciato androidx.compose.animation:animation-*:1.5.1
. La versione 1.5.1 contiene questi commit.
Versione 1.5.0
9 agosto 2023
Viene rilasciato androidx.compose.animation:animation-*:1.5.0
. La versione 1.5.0 contiene questi commit.
Versione 1.5.0-rc01
26 luglio 2023
Viene rilasciato androidx.compose.animation:animation-*:1.5.0-rc01
. La versione 1.5.0-rc01 contiene questi commit.
Correzioni di bug
È stato risolto un problema per cui la chiamata a
.value
su un tipo di stato primitivo (comeMutableIntState
) comportava la segnalazione di un avviso di lint con una correzione non valida. Ora durante l'ispezione verrà consigliata la migrazione alla proprietà corretta. (Iba953, b/287279257)È disponibile un'ispezione facoltativa per consigliare la migrazione delle chiamate
mutableStateOf()
ai tipi specializzati corrispondenti per le primitive. L'ID lint èAutoboxingStateCreation
. In precedenza, questa ispezione era abilitata per impostazione predefinita per tutti i progetti. Per visualizzare questo avviso nell'editor di Android Studio e negli output lint del progetto, cambia la gravità da informativo ad avviso (o superiore) dichiarandowarning "AutoboxingStateCreation"
all'interno della configurazionebuild.gradle
obuild.gradle.kts
del modulo, come mostrato (I34f7e):android { lint { warning "AutoboxingStateCreation" } ... }
Versione 1.5.0-beta03
28 giugno 2023
Viene rilasciato androidx.compose.animation:animation-*:1.5.0-beta03
. La versione 1.5.0-beta03 contiene questi commit.
Versione 1.5.0-beta02
7 giugno 2023
Viene rilasciato androidx.compose.animation:animation-*:1.5.0-beta02
. La versione 1.5.0-beta02 contiene questi commit.
Versione 1.5.0-beta01
24 maggio 2023
Viene rilasciato androidx.compose.animation:animation-*:1.5.0-beta01
. La versione 1.5.0-beta01 contiene questi commit.
Modifiche alle API
- Allocazioni rimosse nelle ricomposizioni, nelle animazioni a colori e in
AndroidComposeView
(Ib2bfa)
Correzioni di bug
- Allocazioni rimosse dalle animazioni primaverili (Ie9431)
Versione 1.5.0-alpha04
10 maggio 2023
Viene rilasciato androidx.compose.animation:animation-*:1.5.0-alpha04
. La versione 1.5.0-alpha04 contiene questi commit.
Modifiche alle API
ContentKey
è ora supportato inAnimatedContent
per consentire un maggiore controllo su quando deve avvenire la transizione. (Ic069b)
Versione 1.5.0-alpha03
19 aprile 2023
Viene rilasciato androidx.compose.animation:animation-*:1.5.0-alpha03
. La versione 1.5.0-alpha03 contiene questi commit.
Nuove funzionalità
- Nuovo comportamento predefinito per
SubcomposeLayout
inLookaheadScope
. Consente aSubcomposeLayouts
senza aree condizionali (ad es.TabRow
,Scaffold
,BoxWithConstraints
e così via) di funzionare correttamente con le animazioni lookahead.
Modifiche alle API
- Il nuovo criterio
intermediateMeasurePolicy
predefinito che riutilizza il criterio di misurazione della tessera lookahead consente aSubcomposeLayout
sottotipi senza aree condizionali comeScaffold
,TabRow
eBoxWithConstraints
di funzionare con lookahead per impostazione predefinita. (ID84c8) - Rinomina gli infissi in
togetherWith
per combinare le transizioni di entrata e uscita. NuovoAnimatedContentScope
come destinatario per il lambda dei contenuti. (Ic39ae)
Versione 1.5.0-alpha02
5 aprile 2023
Viene rilasciato androidx.compose.animation:animation-*:1.5.0-alpha02
. La versione 1.5.0-alpha02 contiene questi commit.
Nuove funzionalità
- Nuova API sperimentale per supportare lookahead in
SubcomposeLayout
. Ciò consentirà aSubcomposeLayout
di funzionare correttamente in unLookaheadScope
. A breve sarà disponibile un ulteriore supporto immediato per sottotipi specifici diSubcomposeLayout
.
Modifiche alle API
- Nuova API
SubcomposeLayout
che richiede un criterio di misura intermedia aggiuntiva per gestire la logica di misura/layout durante animazioni basate su lookahead. (I017d3)
Versione 1.5.0-alpha01
22 marzo 2023
Viene rilasciato androidx.compose.animation:animation-*:1.5.0-alpha01
. La versione 1.5.0-alpha01 contiene questi commit.
Modifiche alle API
AnimatedContent
Le API sono ora stabili,AnimatedContentScope
è stato rinominato inAnimatedContentTransitionScope
.scaleIn
escaleOut
ora sono API stabili. (Iaf54e)
Versione 1.4
Versione 1.4.3
3 maggio 2023
androidx.compose.animation:animation:1.4.3
, androidx.compose.animation:animation-core:1.4.3
e androidx.compose.animation:animation-graphics:1.4.3
vengono rilasciate senza modifiche (solo un bumper di versione).
Versione 1.4.2
19 aprile 2023
androidx.compose.animation:animation:1.4.2
, androidx.compose.animation:animation-core:1.4.2
e androidx.compose.animation:animation-graphics:1.4.2
vengono rilasciate senza modifiche. La versione 1.4.2 contiene questi commit.
Versione 1.4.1
5 aprile 2023
androidx.compose.animation:animation:1.4.1
, androidx.compose.animation:animation-core:1.4.1
e androidx.compose.animation:animation-graphics:1.4.1
vengono rilasciate senza modifiche. La versione 1.4.1 contiene questi commit.
Versione 1.4.0
22 marzo 2023
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.4.0
, androidx.compose.animation:animation-core:1.4.0
e androidx.compose.animation:animation-graphics:1.4.0
. La versione 1.4.0 contiene questi commit.
Modifiche importanti dalla versione 1.3.0
- L'etichetta degli strumenti è supportata in r
ememberInfiniteTransition
e in tutte le funzioni di estensione inInfiniteTransition
e Transizione (ad es.InfiniteTransition#animateColor
) (I56ef7)
Versione 1.4.0-rc01
8 marzo 2023
androidx.compose.animation:animation:1.4.0-rc01
, androidx.compose.animation:animation-core:1.4.0-rc01
e androidx.compose.animation:animation-graphics:1.4.0-rc01
vengono rilasciate senza modifiche. La versione 1.4.0-rc01 contiene questi commit.
Versione 1.4.0-beta02
22 febbraio 2023
androidx.compose.animation:animation:1.4.0-beta02
, androidx.compose.animation:animation-core:1.4.0-beta02
e androidx.compose.animation:animation-graphics:1.4.0-beta02
vengono rilasciate senza modifiche. La versione 1.4.0-beta02 contiene questi commit.
Versione 1.4.0-beta01
8 febbraio 2023
androidx.compose.animation:animation:1.4.0-beta01
, androidx.compose.animation:animation-core:1.4.0-beta01
e androidx.compose.animation:animation-graphics:1.4.0-beta01
vengono rilasciate senza modifiche. La versione 1.4.0-beta01 contiene questi commit.
Versione 1.4.0-alpha05
25 gennaio 2023
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.4.0-alpha05
, androidx.compose.animation:animation-core:1.4.0-alpha05
e androidx.compose.animation:animation-graphics:1.4.0-alpha05
. La versione 1.4.0-alpha05 contiene questi commit.
Modifiche
- Nessuna modifica nelle librerie di animazioni dall'ultima versione alpha, solo impatto della versione
Versione 1.4.0-alpha04
11 gennaio 2023
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.4.0-alpha04
, androidx.compose.animation:animation-core:1.4.0-alpha04
e androidx.compose.animation:animation-graphics:1.4.0-alpha04
. La versione 1.4.0-alpha04 contiene questi commit.
Nuove funzionalità
- L'etichetta degli strumenti è supportata in
rememberInfiniteTransition
e in tutte le funzioni di estensione suInfiniteTransition
eTransition
(ad es.InfiniteTransition#animateColor
) (I56ef7)
Modifiche alle API
- Le API
InfiniteTransition#TransitionAnimationState
eInfiniteTransition#animations
sono ora pubbliche. (I36682)
Versione 1.4.0-alpha03
7 dicembre 2022
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.4.0-alpha03
, androidx.compose.animation:animation-core:1.4.0-alpha03
e androidx.compose.animation:animation-graphics:1.4.0-alpha03
. La versione 1.4.0-alpha03 contiene questi commit.
Modifiche alle API
- Nei test dell'interfaccia utente che utilizzano una regola di composizione, le continuazioni riprese durante i callback
withFrameNanos
non verranno inviate fino al termine dell'esecuzione di tutti i callback frame. Questo corrisponde al comportamento di Compose quando viene eseguito normalmente. Tuttavia, i test che si basano sul comportamento precedente potrebbero non riuscire. Ciò dovrebbe interessare solo il codice che chiama direttamentewithFrameNanos
owithFrameMillis
e ha una logica esterna al callback passato a quelle funzioni che potrebbero dover essere spostate all'interno dei callback. Consulta le modifiche relative al test delle animazioni in questo CL per degli esempi. - È stato aggiunto il parametro facoltativo
onPerformTraversals: (Long) -> Unit
al costruttoreTestMonotonicFrameClock
e alla funzione di fabbrica per eseguire il codice dopo i callbackwithFrameNanos
, ma prima di riprendere i chiamanti coroutine. (Idb413, b/254115946, b/222093277, b/255802670) - Nuovo parametro in
AnimatedContent
per l'etichetta strumenti (Iebe2d)
Versione 1.4.0-alpha02
9 novembre 2022
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.4.0-alpha02
, androidx.compose.animation:animation-core:1.4.0-alpha02
e androidx.compose.animation:animation-graphics:1.4.0-alpha02
. La versione 1.4.0-alpha02 contiene questi commit.
Modifiche alle API
- Aggiungi
ToolingState
per consentire agli strumenti di modificare gli stati interni di Composable (Ie6614)
Versione 1.4.0-alpha01
24 ottobre 2022
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.4.0-alpha01
, androidx.compose.animation:animation-core:1.4.0-alpha01
e androidx.compose.animation:animation-graphics:1.4.0-alpha01
. La versione 1.4.0-alpha01 contiene questi commit.
Correzioni di bug
- Correggere l'animazione di interruzione errata nei contenuti animati (b/238662479)
Versione 1.3
Versione 1.3.3
11 gennaio 2023
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.3.3
, androidx.compose.animation:animation-core:1.3.3
e androidx.compose.animation:animation-graphics:1.3.3
. La versione 1.3.3 contiene questi commit.
- Nessuna modifica dalla versione 1.3.2.
Versione 1.3.2
7 dicembre 2022
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.3.2
, androidx.compose.animation:animation-core:1.3.2
e androidx.compose.animation:animation-graphics:1.3.2
. La versione 1.3.2 contiene questi commit.
Correzioni di bug
- Aggiornato per supportare androidx.compose.ui 1.3.2
Versione 1.3.1
9 novembre 2022
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.3.1
, androidx.compose.animation:animation-core:1.3.1
e androidx.compose.animation:animation-graphics:1.3.1
. La versione 1.3.1 contiene questi commit.
Versione 1.3.0
24 ottobre 2022
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.3.0
, androidx.compose.animation:animation-core:1.3.0
e androidx.compose.animation:animation-graphics:1.3.0
. La versione 1.3.0 contiene questi commit.
Modifiche importanti dalla versione 1.2.0
- Il nuovo insieme di funzioni di easing diventa stabili
Versione 1.3.0-rc01
5 ottobre 2022
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.3.0-rc01
, androidx.compose.animation:animation-core:1.3.0-rc01
e androidx.compose.animation:animation-graphics:1.3.0-rc01
. La versione 1.3.0-rc01 contiene questi commit.
Versione 1.3.0-beta03
21 settembre 2022
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.3.0-beta03
, androidx.compose.animation:animation-core:1.3.0-beta03
e androidx.compose.animation:animation-graphics:1.3.0-beta03
. La versione 1.3.0-beta03 contiene questi commit.
- Nessuna modifica dalla versione 1.3.0-beta02.
Versione 1.3.0-beta02
7 settembre 2022
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.3.0-beta02
, androidx.compose.animation:animation-core:1.3.0-beta02
e androidx.compose.animation:animation-graphics:1.3.0-beta02
. La versione 1.3.0-beta02 contiene questi commit.
- Kotlin.experimental rimosso dalle opzioni del compilatore poiché è stato depricato
Versione 1.3.0-beta01
24 agosto 2022
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.3.0-beta01
, androidx.compose.animation:animation-core:1.3.0-beta01
e androidx.compose.animation:animation-graphics:1.3.0-beta01
. La versione 1.3.0-beta01 contiene questi commit.
Versione 1.3.0-alpha03
10 agosto 2022
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.3.0-alpha03
, androidx.compose.animation:animation-core:1.3.0-alpha03
e androidx.compose.animation:animation-graphics:1.3.0-alpha03
. La versione 1.3.0-alpha03 contiene questi commit.
Modifiche alle API
- Nuovo parametro in
Crossfade
,animateAsState
eAnimatable
per l'etichetta degli strumenti (Iac08a) - È stata aggiunta la funzione
atFraction
per definire i fotogrammi chiave in corrispondenza di una frazione anziché di una durata specifica. (I20c76, b/232059455)
Versione 1.3.0-alpha02
27 luglio 2022
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.3.0-alpha02
, androidx.compose.animation:animation-core:1.3.0-alpha02
e androidx.compose.animation:animation-graphics:1.3.0-alpha02
. La versione 1.3.0-alpha02 contiene questi commit.
Versione 1.3.0-alpha01
29 giugno 2022
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.3.0-alpha01
, androidx.compose.animation:animation-core:1.3.0-alpha01
e androidx.compose.animation:animation-graphics:1.3.0-alpha01
. La versione 1.3.0-alpha01 contiene questi commit.
Modifiche alle API
- Nuovo elemento
LookaheadLayout
che supporta un pass lookahead prima della misura/del layout effettivi. In questo modo è possibile eseguire un precalcolo del layout in caso di modifiche, mentre la misura/il layout post-lookahead può utilizzare la dimensione/posizione precalcolata per animare le dimensioni e le posizioni verso il target.SubcomposeLayouts
non sono ancora supportati, ma lo saranno in una release futura. (I477f5)
Versione 1.2
Versione 1.2.1
10 agosto 2022
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.2.1
, androidx.compose.animation:animation-core:1.2.1
e androidx.compose.animation:animation-graphics:1.2.1
. La versione 1.2.1 contiene questi commit.
Versione 1.2.0
27 luglio 2022
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.2.0
, androidx.compose.animation:animation-core:1.2.0
e androidx.compose.animation:animation-graphics:1.2.0
. La versione 1.2.0 contiene questi commit.
Modifiche importanti dalla versione 1.1.0
- La funzionalità di scrittura dell'animazione ora supporta "Scala della durata dell'animatore" dalle Opzioni sviluppatore.
- Un'ampia selezione di nuove curve di easing sperimentali.
AnimatedImageVector
ora supportarepeatCount
erepeatMode
Versione 1.2.0-rc03
29 giugno 2022
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.2.0-rc03
, androidx.compose.animation:animation-core:1.2.0-rc03
e androidx.compose.animation:animation-graphics:1.2.0-rc03
. La versione 1.2.0-rc03 contiene questi commit.
- Nessuna modifica dalla versione 1.2.0-rc02.
Versione 1.2.0-rc02
22 giugno 2022
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.2.0-rc02
, androidx.compose.animation:animation-core:1.2.0-rc02
e androidx.compose.animation:animation-graphics:1.2.0-rc02
. La versione 1.2.0-rc02 contiene questi commit.
Correzioni di bug
- Rimossa l'annotazione
ExperimentalEasingApi
sulle funzioni di easing (Ied441)
Versione 1.2.0-rc01
15 giugno 2022
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.2.0-rc01
, androidx.compose.animation:animation-core:1.2.0-rc01
e androidx.compose.animation:animation-graphics:1.2.0-rc01
. La versione 1.2.0-rc01 contiene questi commit.
Modifiche alle API
- Le interfacce nelle librerie di scrittura vengono ora create utilizzando i metodi predefiniti dell'interfaccia jdk8 (I5bcf1)
Versione 1.2.0-beta03
1 giugno 2022
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.2.0-beta03
, androidx.compose.animation:animation-core:1.2.0-beta03
e androidx.compose.animation:animation-graphics:1.2.0-beta03
. La versione 1.2.0-beta03 contiene questi commit.
Modifiche alle API
- Aggiunta di curve di attenuazione sperimentale per le animazioni (I64a38)
Versione 1.2.0-beta02
18 maggio 2022
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.2.0-beta02
, androidx.compose.animation:animation-core:1.2.0-beta02
e androidx.compose.animation:animation-graphics:1.2.0-beta02
. La versione 1.2.0-beta02 contiene questi commit.
Versione 1.2.0-beta01
11 maggio 2022
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.2.0-beta01
, androidx.compose.animation:animation-core:1.2.0-beta01
e androidx.compose.animation:animation-graphics:1.2.0-beta01
. La versione 1.2.0-beta01 contiene questi commit.
- Questa è la prima versione beta della 1.2. Non sono state apportate modifiche dall'ultima versione alpha.
Versione 1.2.0-alpha08
20 aprile 2022
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.2.0-alpha08
, androidx.compose.animation:animation-core:1.2.0-alpha08
e androidx.compose.animation:animation-graphics:1.2.0-alpha08
. La versione 1.2.0-alpha08 contiene questi commit.
Versione 1.2.0-alpha07
6 aprile 2022
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.2.0-alpha07
, androidx.compose.animation:animation-core:1.2.0-alpha07
e androidx.compose.animation:animation-graphics:1.2.0-alpha07
. La versione 1.2.0-alpha07 contiene questi commit.
Modifiche alle API
AnimatedImageVector
ora supportarepeatCount
erepeatMode
(Ia3e75, b/199304067)
Versione 1.2.0-alpha06
23 marzo 2022
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.2.0-alpha06
, androidx.compose.animation:animation-core:1.2.0-alpha06
e androidx.compose.animation:animation-graphics:1.2.0-alpha06
. La versione 1.2.0-alpha06 contiene questi commit.
Modifiche alle API
- Aggiornamento dell'analisi dei drawable vettoriali per supportare il mirroring automatico per invertire i contenuti di un
VectorPainter
se la direzione del layout corrente è RTL. (I79cd9, b/185760237)
Correzioni di bug
- Sono state aggiornate le API Vector Graphics per utilizzare l'annotazione componibile corretta
@VectorComposable
anziché@UiComposable
(I942bc)
Versione 1.2.0-alpha05
9 marzo 2022
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.2.0-alpha05
, androidx.compose.animation:animation-core:1.2.0-alpha05
e androidx.compose.animation:animation-graphics:1.2.0-alpha05
. La versione 1.2.0-alpha05 contiene questi commit.
Modifiche alle API
- Evviva! Ora la funzionalità di scrittura dell'animazione è supportata "Scala durata animazione" dalle Opzioni sviluppatore. (I5a4fc, b/161675988)
Versione 1.2.0-alpha04
23 febbraio 2022
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.2.0-alpha04
, androidx.compose.animation:animation-core:1.2.0-alpha04
e androidx.compose.animation:animation-graphics:1.2.0-alpha04
. La versione 1.2.0-alpha04 contiene questi commit.
Versione 1.2.0-alpha03
9 febbraio 2022
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.2.0-alpha03
, androidx.compose.animation:animation-core:1.2.0-alpha03
e androidx.compose.animation:animation-graphics:1.2.0-alpha03
. La versione 1.2.0-alpha03 contiene questi commit.
Versione 1.2.0-alpha02
26 gennaio 2022
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.2.0-alpha02
, androidx.compose.animation:animation-core:1.2.0-alpha02
e androidx.compose.animation:animation-graphics:1.2.0-alpha02
. La versione 1.2.0-alpha02 contiene questi commit.
Versione 1.2.0-alpha01
12 gennaio 2022
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.2.0-alpha01
, androidx.compose.animation:animation-core:1.2.0-alpha01
e androidx.compose.animation:animation-graphics:1.2.0-alpha01
. La versione 1.2.0-alpha01 contiene questi commit.
Modifiche alle API
- Usa
AnimatedImageVector.animatedVectorResource
anzichéanimatedVectorResource
per caricare un file di risorse<animated-vector>
.- Usa
rememberAnimatedVectorResource
anzichéAnimatedImageVector#painterFor
per eseguire il rendering di unAnimatedImageVector
. (I9c300)
- Usa
Correzioni di bug
- Aggiungere i metodi toString ad Animatable e AnimationResult. (Icd3a6)
Aggiornamenti delle dipendenze
- Ora dipende da Kotlin
1.6.10
.
Versione 1.1
Versione 1.1.1
23 febbraio 2022
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.1.1
, androidx.compose.animation:animation-core:1.1.1
e androidx.compose.animation:animation-graphics:1.1.1
. La versione 1.1.1 contiene questi commit.
Correzioni di bug
- Correggi
NullPointerException
inandroidx.compose.ui.platform.RenderNodeLayer.updateDisplayList
(aosp/1947059, b/206677462) - È stato corretto l'arresto anomalo causato dai contenuti degli appunti durante la lettura da appunti su Android. (I06020, b/197769306)
- RTL fisso in
LazyVerticalGrid
(aosp/1931080, b/207510535)
Versione 1.1.0
9 febbraio 2022
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.1.0
, androidx.compose.animation:animation-core:1.1.0
e androidx.compose.animation:animation-graphics:1.1.0
. La versione 1.1.0 contiene questi commit.
Modifiche importanti dalla versione 1.0.0
- Supporto stabile dell'effetto Overscroll per Android 12
- Miglioramenti alle dimensioni del touch target
- Tieni presente che, rispetto a Compose 1.0, i componenti Material amplieranno lo spazio di layout per rispettare le linee guida per l'accessibilità di Material relative alle dimensioni del touch target. Ad esempio, il touch target del pulsante si espanderà a una dimensione minima di 48 x 48 dp, anche se imposti le dimensioni del pulsante su un valore inferiore. In questo modo, Compose Material si allinea allo stesso comportamento dei componenti di Material Design e si ottiene un comportamento coerente se si combinano Visualizzazioni e Compose. Questa modifica garantisce inoltre che, quando crei la UI utilizzando i componenti Compose Material, vengano soddisfatti i requisiti minimi per l'accessibilità dei touch target.
- Supporto stabile per barra di navigazione
- Consente di passare alcune API precedentemente sperimentali allo stato stabile
- Supporto per versioni più recenti di Kotlin
Versione 1.1.0-rc03
26 gennaio 2022
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.1.0-rc03
, androidx.compose.animation:animation-core:1.1.0-rc03
e androidx.compose.animation:animation-graphics:1.1.0-rc03
. La versione 1.1.0-rc03 contiene questi commit.
Correzioni di bug
- Aggiornato per supportare Compose Material 1.1.0-rc03
Versione 1.1.0-rc01
15 dicembre 2021
Vengono rilasciate le versioni androidx.compose.animation:animation:1.1.0-rc01
e androidx.compose.animation:animation-core:1.1.0-rc01
. La versione 1.1.0-rc01 contiene questi commit.
Modifiche alle API
- Usa
AnimatedImageVector.animatedVectorResource
anzichéanimatedVectorResource
per caricare un file di risorse<animated-vector>
.- Usa
rememberAnimatedVectorResource
anzichéAnimatedImageVector#painterFor
per eseguire il rendering di unAnimatedImageVector
. (I9c300)
- Usa
Versione 1.1.0-beta04
1 dicembre 2021
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.1.0-beta04
, androidx.compose.animation:animation-core:1.1.0-beta04
e androidx.compose.animation:animation-graphics:1.1.0-beta04
. La versione 1.1.0-beta04 contiene questi commit.
Nuove funzionalità
- Aggiornamento per essere compatibile con Kotlin
1.6.0
Versione 1.1.0-beta03
17 novembre 2021
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.1.0-beta03
, androidx.compose.animation:animation-core:1.1.0-beta03
e androidx.compose.animation:animation-graphics:1.1.0-beta03
. La versione 1.1.0-beta03 contiene questi commit.
Modifiche alle API
- Aggiunto un nuovo modificatore Modifier.onPlaced per consentire posizionamento da osservare. Ulteriori modifiche a l'offset del modificatore secondario può essere calcolato in base la modifica di posizionamento osservata. (I558fd)
Nuovo supporto per contentKey nella dissolvenza incrociata. ContentKey verrà utilizzato per il controllo di uguaglianza dal sistema di animazione. Pertanto, le differenze personalizzate in base agli stati possono essere ottenute specificando l'elemento contentKey appropriato per i diversi stati.
ContentKey verrà anche utilizzato come chiave per salvare e ripristinare i contenuti. (I2e055, b/197907070)
Versione 1.1.0-beta02
3 novembre 2021
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.1.0-beta02
, androidx.compose.animation:animation-core:1.1.0-beta02
e androidx.compose.animation:animation-graphics:1.1.0-beta02
. La versione 1.1.0-beta02 contiene questi commit.
Correzioni di bug
- Nuove API di animazione per gli strumenti di supporto. In particolare, per consentire l'analisi delle animazioni le loro configurazioni Transizioni. (I4116e)
Versione 1.1.0-beta01
27 ottobre 2021
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.1.0-beta01
, androidx.compose.animation:animation-core:1.1.0-beta01
e androidx.compose.animation:animation-graphics:1.1.0-beta01
. La versione 1.1.0-beta01 contiene questi commit.
Modifiche alle API
- Nuove API di animazione per gli strumenti di supporto. In particolare, per consentire l'analisi delle animazioni le loro configurazioni Transizioni. (I4116e)
Versione 1.1.0-alpha06
13 ottobre 2021
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.1.0-alpha06
, androidx.compose.animation:animation-core:1.1.0-alpha06
e androidx.compose.animation:animation-graphics:1.1.0-alpha06
. La versione 1.1.0-alpha06 contiene questi commit.
Versione 1.1.0-alpha05
29 settembre 2021
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.1.0-alpha05
, androidx.compose.animation:animation-core:1.1.0-alpha05
e androidx.compose.animation:animation-graphics:1.1.0-alpha05
. La versione 1.1.0-alpha05 contiene questi commit.
Modifiche alle API
EnterTransition
,ExitTransition
e alcuni deiAnimatedVisibility
API sono state rese stabili. Inoltre,MutableTransitionState.isIdle
non è più sperimentale. (I5072d)Breaking change: lambda nelle fabbriche di entrata/uscita. sono stati spostati nell'ultima posizione dell'elenco di parametri. (I5072d)
Versione 1.1.0-alpha04
15 settembre 2021
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.1.0-alpha04
, androidx.compose.animation:animation-core:1.1.0-alpha04
e androidx.compose.animation:animation-graphics:1.1.0-alpha04
. La versione 1.1.0-alpha04 contiene questi commit.
Versione 1.1.0-alpha03
1° settembre 2021
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.1.0-alpha03
, androidx.compose.animation:animation-core:1.1.0-alpha03
e androidx.compose.animation:animation-graphics:1.1.0-alpha03
. La versione 1.1.0-alpha03 contiene questi commit.
Nuove funzionalità
- Compose
1.1.0-alpha03
è stata aggiornata per dipendere da Kotlin1.5.30
. (I74545)
Versione 1.1.0-alpha02
18 agosto 2021
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.1.0-alpha02
, androidx.compose.animation:animation-core:1.1.0-alpha02
e androidx.compose.animation:animation-graphics:1.1.0-alpha02
. La versione 1.1.0-alpha02 contiene questi commit.
Modifiche alle API
- StartOffset è ora supportato in modalità ripetibili infiniti ripetibile, come un modo per ritardare l'ora di inizio far avanzare velocemente l'animazione prima che inizi. Questo offset iniziale non verrà ripetuto (Ic679f, b/195079908)
- Nuova transizione Invio/Uscita per la scalabilità. Può essere utilizzato in combinazione con altri tipi di transizioni di entrata/uscita. (I372da, b/191325593)
Versione 1.1.0-alpha01
4 agosto 2021
Vengono rilasciate le funzionalità androidx.compose.animation:animation:1.1.0-alpha01
, androidx.compose.animation:animation-core:1.1.0-alpha01
e androidx.compose.animation:animation-graphics:1.1.0-alpha01
. La versione 1.1.0-alpha01 contiene questi commit.
Modifiche alle API
AnimatedImageVector
e le API correlate si trovano ora nel nuovo Moduloandroidx.compose.animation:animation-graphics
. (I60873)
Correzioni di bug
InfiniteAnimationPolicy
spostato in :compose:ui (I5eb09, b/160602714)
Versione 1.0
Versione 1.0.5
3 novembre 2021
Vengono rilasciate le versioni androidx.compose.animation:animation:1.0.5
e androidx.compose.animation:animation-core:1.0.5
. La versione 1.0.5 contiene questi commit.
Correzioni di bug
- È stato corretto un arresto anomalo del monitoraggio delle istanze derivateStateOf. (aosp/1792247)
Versione 1.0.4
13 ottobre 2021
Vengono rilasciate le versioni androidx.compose.animation:animation:1.0.4
e androidx.compose.animation:animation-core:1.0.4
. La versione 1.0.4 contiene questi commit.
Aggiornamenti delle dipendenze
- Aggiornamento in base a Kotlin
1.5.31
eseguito
Versione 1.0.3
29 settembre 2021
Vengono rilasciate le versioni androidx.compose.animation:animation:1.0.3
e androidx.compose.animation:animation-core:1.0.3
. La versione 1.0.3 contiene questi commit.
Aggiornamenti delle dipendenze
- Aggiornamento in base a Kotlin
1.5.30
eseguito
Versione 1.0.2
1° settembre 2021
Vengono rilasciate le versioni androidx.compose.animation:animation:1.0.2
e androidx.compose.animation:animation-core:1.0.2
. La versione 1.0.2 contiene questi commit.
Aggiornamento eseguito per supportare la release Compose 1.0.2
. Compose 1.0.2
è ancora compatibile con Kotlin 1.5.21
.
Versione 1.0.1
4 agosto 2021
Vengono rilasciate le versioni androidx.compose.animation:animation:1.0.1
e androidx.compose.animation:animation-core:1.0.1
. La versione 1.0.1 contiene questi commit.
Aggiornamenti delle dipendenze
- Aggiornamento eseguito in modo da dipendere da Kotlin
1.5.21
.
Versione 1.0.0
28 luglio 2021
Vengono rilasciate le versioni androidx.compose.animation:animation:1.0.0
e androidx.compose.animation:animation-core:1.0.0
. La versione 1.0.0 contiene questi commit.
Funzionalità principali di 1.0.0
Questa è la prima release stabile di Compose. Per ulteriori dettagli, consulta il blog ufficiale di Compose Release.
Problemi noti
Se utilizzi Android Studio Bumblebee Canary 4 o AGP
7.1.0-alpha04
/7.1.0-alpha05
, potresti riscontrare il seguente arresto anomalo:java.lang.AbstractMethodError: abstract method "void androidx.lifecycle.DefaultLifecycleObserver.onCreate(androidx.lifecycle.LifecycleOwner)"
Per risolvere il problema, aumenta temporaneamente il valore minSdkVersion nel file
build.gradle
e impostalo su un valore superiore a 24. Questo problema verrà risolto nella prossima versione di Android Studio Bumblebee e AGP7.1
. (b/194289155)
Versione 1.0.0-rc02
14 luglio 2021
Vengono rilasciate le versioni androidx.compose.animation:animation:1.0.0-rc02
e androidx.compose.animation:animation-core:1.0.0-rc02
. La versione 1.0.0-rc02 contiene questi commit.
Versione 1.0.0-rc01
1 luglio 2021
Vengono rilasciate le versioni androidx.compose.animation:animation:1.0.0-rc01
e androidx.compose.animation:animation-core:1.0.0-rc01
. La versione 1.0.0-rc01 contiene questi commit.
Correzioni di bug
InfiniteAnimationPolicy
spostato inandroidx.compose.ui:ui
(I5eb09, b/160602714)
Versione 1.0.0-beta09
16 giugno 2021
Vengono rilasciate le versioni androidx.compose.animation:animation:1.0.0-beta09
e androidx.compose.animation:animation-core:1.0.0-beta09
. La versione 1.0.0-beta09 contiene questi commit.
Modifiche alle API
- Nuovo
AnimatedContent
componibile. Gestisce i propri contenuti modifica utilizzandoContentTransform
personalizzabile come nuovo contenuto di destinazione e il contenuto iniziale esce. Combinazione diversa dell'immissione le transizioni possono essere usate per creare un aspetto personalizzato percepita. Nell'ambito della trasformazione dei contenuti,AnimatedContent
ne anima automaticamente le dimensioni per corrispondere ai contenuti in arrivo. (I2c3df) ManualFrameClock
rimosso. Se hai bisogno di controllare le animazioni, usa invececomposeTestRule.mainClock
. (I3c3e8, b/189951065)
Regole del profilo aggiunte
In questa release vengono aggiunte regole di profilo ai seguenti moduli di scrittura (I14ed6):
- androidx.compose.animation
- androidx.compose.animation-core
- androidx.compose.foundation
- androidx.compose.layout-base
- androidx.compose.material
- androidx.compose.materiale-eco
- androidx.compose.runtime
- androidx.compose.ui
- androidx.compose.ui.geometry
- androidx.compose.ui.graphics
- testo androidx.compose.ui.
- testo androidx.compose.ui.
- androidx.compose.ui.unit
- androidx.compose.ui.util,
Che cosa sono le regole del profilo?
Le regole del profilo per una libreria vengono specificate in un file di testo
baseline-prof.txt
situato insrc/main
o nella directory equivalente. Il file specifica una regola per riga, dove una regola in questo caso è un pattern per la corrispondenza con metodi o classi nella libreria. La sintassi per queste regole è un soprainsieme del formato del profilo ART leggibile che viene utilizzato quando si utilizzaadb shell profman --dump-classes-and-methods ...
. Queste regole possono avere come target metodi o classi.Una regola del metodo avrà il seguente pattern:
<FLAGS><CLASS_DESCRIPTOR>-><METHOD_SIGNATURE>
Una regola della classe avrà il seguente pattern:
<CLASS_DESCRIPTOR>
Qui
<FLAGS>
rappresenta uno o più caratteriH
,S
eP
per indicare se questo metodo deve essere contrassegnato o meno come "A caldo", "Avvio" o "Post avvio".<CLASS_DESCRIPTOR>
è il descrittore della classe a cui appartiene il metodo scelto come target. Ad esempio, la classeandroidx.compose.runtime.SlotTable
avrà un descrittoreLandroidx/compose/runtime/SlotTable;
.<METHOD_SIGNATURE>
è la firma del metodo e include il nome, i tipi di parametri e i tipi restituiti del metodo. Ad esempio, il metodofun isPlaced(): Boolean
suLayoutNode
ha la firmaisPlaced()Z
.Questi pattern possono avere caratteri jolly (
**
,*
e?
) in modo da avere una singola regola che comprende più metodi o classi.
A cosa servono le regole?
Un metodo con il flag
H
indica che si tratta di un metodo "hot" e devono essere compilati in anticipo.Un metodo con il flag
S
indica che si tratta di un metodo chiamato all'avvio e che deve essere compilato in anticipo per evitare i costi della compilazione e dell'interpretazione del metodo al momento dell'avvio.Un metodo con il flag
P
indica che si tratta di un metodo che viene richiamato dopo l'avvio.Una classe presente in questo file indica che viene utilizzata durante l'avvio e deve essere preallocata nell'heap per evitare il costo del caricamento della classe.
Come funziona?
- Le librerie possono definire queste regole che verranno pacchettizzate in artefatti AAR. Quando viene creata un'app che include questi elementi, queste regole vengono unite e le regole unite vengono utilizzate per creare un profilo ART binario compatto specifico per l'app. ART può quindi sfruttare questo profilo quando l'app viene installata sui dispositivi per compilare in anticipo un sottoinsieme specifico dell'applicazione al fine di migliorare le prestazioni dell'applicazione, in particolare la prima esecuzione. Tieni presente che ciò non avrà alcun effetto sulle applicazioni di cui è possibile eseguire il debug.
Versione 1.0.0-beta08
2 giugno 2021
Vengono rilasciate le versioni androidx.compose.animation:animation:1.0.0-beta08
e androidx.compose.animation:animation-core:1.0.0-beta08
. La versione 1.0.0-beta08 contiene questi commit.
Correzioni di bug
- Ora
detectDragGesures
,detectVerticalGestures
edetectHorizontalGestures
utilizzeranno automaticamente il cambio di posizione, senza dover chiamare change.consumePositionChange nei callback onTrascina (I42fc4, b/185096350, b/187320697) Modifier.onGloballyPositioned()
è stato modificato per indicare le coordinate di questo modificatore nella catena di modificatori, non le coordinate del layout dopo l'applicazione di tutti i modificatori. Ciò significa che ora l'ordine dei modificatori influisce sulle coordinate da indicare. (Ieb67d, b/177926591)
Versione 1.0.0-beta07
18 maggio 2021
Vengono rilasciate le versioni androidx.compose.animation:animation:1.0.0-beta07
e androidx.compose.animation:animation-core:1.0.0-beta07
. La versione 1.0.0-beta07 contiene questi commit.
Modifiche alle API
- Nuova API
AnimatedVisibility
che supporta la visibilità da specificare in unMutableTransitionState
. In questo modo, gli stati dell'animazione osservato esternamente aAnimatedVisibility
tramitecurrentState
eisIdle
.- Assistenza per la transizione di nuovi account secondari in Transizione
- Supporta l'animazione di transizione personalizzata per l'uscita/l'invio in AnimatedVisibility usando AnimationScope.transition
- Nuovo modificatore animatoEnterExit accessibile a tutti gli elementi secondari di Visibilità animata
- Sono state ritirate le API AnimatedVisibility che utilizzano un
initiallyVisible
parametro (I702f3)
Versione 1.0.0-beta06
5 maggio 2021
Vengono rilasciate le versioni androidx.compose.animation:animation:1.0.0-beta06
e androidx.compose.animation:animation-core:1.0.0-beta06
. La versione 1.0.0-beta06 contiene questi commit.
Versione 1.0.0-beta05
21 aprile 2021
Vengono rilasciate le versioni androidx.compose.animation:animation:1.0.0-beta05
e androidx.compose.animation:animation-core:1.0.0-beta05
. La versione 1.0.0-beta05 contiene questi commit.
Correzioni di bug
- I file AndroidManifest di ui-test-manifest e ui-tooling-data sono ora compatibili con Android 12 (I6f9de, b/184718994)
Versione 1.0.0-beta04
7 aprile 2021
Vengono rilasciate le versioni androidx.compose.animation:animation:1.0.0-beta04
e androidx.compose.animation:animation-core:1.0.0-beta04
. La versione 1.0.0-beta04 contiene questi commit.
Modifiche alle API
- Le istanze pubbliche di
RowScope
,ColumnScope
,BoxScope
,BoxWithConstraintsScope
sono state rimosse. (I4e83e, b/181869067)
Versione 1.0.0-beta03
24 marzo 2021
Vengono rilasciate le versioni androidx.compose.animation:animation:1.0.0-beta03
e androidx.compose.animation:animation-core:1.0.0-beta03
. La versione 1.0.0-beta03 contiene questi commit.
Versione 1.0.0-beta02
10 marzo 2021
Vengono rilasciate le versioni androidx.compose.animation:animation:1.0.0-beta02
e androidx.compose.animation:animation-core:1.0.0-beta02
. La versione 1.0.0-beta02 contiene questi commit.
Correzioni di bug
- Applicare restrizioni sull'uso pubblico delle API sperimentali (I6aa29, b/174531520)
Versione 1.0.0-beta01
24 febbraio 2021
Vengono rilasciate le versioni androidx.compose.animation:animation:1.0.0-beta01
e androidx.compose.animation:animation-core:1.0.0-beta01
. La versione 1.0.0-beta01 contiene questi commit.
Questa è la prima versione di Compose 1.0.0 Beta.
Modifiche alle API
InteractionState
è stato sostituito con[Mutable]InteractionSource
- Le interfacce sono responsabili dell'emissione / raccolta degli eventi di interazione.
- Anziché trasmettere
interactionState = remember { InteractionState() }
a componenti comeButton
eModifier.clickable()
, utilizzainteractionSource = remember { MutableInteractionSource() }
. - Invece di:
Interaction.Pressed in interactionState
, devi utilizzare le funzioni di estensione su InteractionSource, ad esempio InteractionSource.collectIsPressedAsState(). - Per casi d'uso complessi, puoi utilizzare InteractionSource.interactions per osservare il flusso di interazioni. Per ulteriori informazioni, consulta la documentazione e gli esempi di InteractionSource.
- (I85965, b/152525426, b/171913923, b/171710801, b/174852378)
- " smoothscrollBy" e "scrollBy" pacchetti cambiati in
androidx.compose.foundation.gestures.*
(I3f7c1, b/175294473) - I modificatori di dimensione sono stati rinominati. Modifier.width/height/size è stato rinominato in requiredwidth/requiredHeight/requiredSize. Modifier.preferredwidth/preferredHeight/preferredSize è stata rinominata in larghezza/altezza/dimensione. (I5b414).
- L'orientamento è stato spostato nel pacchetto di base. VelocirtTracker è passato da ui.gesture a ui.input.pointer. (Iff4a8, b/175294473)
- AnimationClockObservable e le sottoclassi sono state rimosso. L'animazione Float è stata rimossa. (Icde52, b/177457083)
- Modifier.draggable ora accetta DraggableState anziché un semplice lambda. puoi creare lo stato tramite
rememberDraggableState { delta -> }
per ottenere lo stesso comportamento di prima (Ica70f, b/175294473) - le API animate, AnimatedValue, AnimatedValue) hanno rimosso (If27bc, b/177457083)
- AnimationEndReason.Interrupted è stato rimosso. Se l'animazione viene interrotta, viene inviata un'eccezione AnnullationException. (I2cbbc, b/179695417)
- L'API TargetAnimation è stata rimossa. (If47d1, b/177457083)
Versione 1.0.0-alpha12
10 febbraio 2021
Vengono rilasciate le versioni androidx.compose.animation:animation:1.0.0-alpha12
e androidx.compose.animation:animation-core:1.0.0-alpha12
. La versione 1.0.0-alpha12 contiene questi commit.
Modifiche alle API
Modifier.pointerInput
ora richiede di memorizzare i tasti per indicare quando la coroutine di rilevamento dell'input del puntatore deve riavviarsi per nuovi delle dipendenze. (I849cd)- I limiti sono stati rinominati in DpRect (I4b32a)
- Il nome del parametro da AnimationSpec è stato unificato in animazioneSpec. all'interno del sistema di animazione. Limita anche le transizioni di entrata/uscita. per accettare FiniteAnimationSpec. (Ie47c5, b/177457083)
- Animatable.snapTo e Animatable.stop sono ora funzioni di sospensione (If4288)
- Analogamente a come abbiamo rimosso il componibile
state { 0 }
e ora ne promuoviamo l'utilizzo comeremember { mutableStateOf(0) }
, rimuoveremo il componibilesavedInstanceState { 0 }
. Dovresti usarerememberSaveable { mutableStateOf(0) }
, che verrà salvato e ripristinato automaticamente se il tipo utilizzato all'interno del MutableState può essere archiviato nel bundle. Se in precedenza passavi un oggetto salvaschermo personalizzato, ora devi utilizzare un nuovo sovraccarico di memorizzareSaveable con il parametrostateSaver
. L'utilizzo sarà simile a questo:val holder = rememberSaveable(stateSaver = HolderSaver) { mutableStateOf(Holder(0)) }
(Ib4c26, b/177338004) - Aggiornamento della firma del metodo di dissolvenza incrociata per una maggiore coerenza con il resto del sistema di animazione. (Ib05ed, b/177457083)
- SavedInstanceState() è stato rinominato in saveSaveable() e spostato nel pacchetto androidx.compose.runtime.saveable. (I1366e, b/177338004)
- Il nome RestorableStateHolder è stato rinominato SaveableStateStatepor e è stato spostato nel pacchetto androidx.compose.runtime.saveable. Il metodo interno RestorableStateProvider è stato rinominato in SaveableStateProvider. Il tipo generico è stato rimosso, quindi puoi semplicemente passare Qualsiasi come chiave. L'annotazione sperimentale non è più necessaria. (I0902e, b/174598702)
- Aggiornamento dell'API Modifier.animateContentSize per garantire la coerenza con il resto del sistema di animazione. (I0bf75, b/177457083)
- L'elemento AnimatedValue/Float è ora deprecato. Utilizza Animabili. (I71345, b/177457083)
- Le opzioni tapGeFilter, doubleTapGeFilter, longPress descrittiFilter e pressIndicaitonGeFilter sono state ritirate. Usa invece Modifier.clickable o Modifier.pointerInput con la funzione detectTapGestis. (I6baf9, b/175294473)
- Introdotto un contesto relativo alla coroutine
InfiniteAnimationPolicy
elemento che verrà applicato in animazioni infinite. Per impostazione predefinita, viene installato, tranne durante l'esecuzione di test conComposeTestRule
. (I50ec4, b/151940543) - I metodi Destructuring e copy() sono stati rimossi da diverse classi in cui venivano usati raramente. (I26702, b/178659281)
- La riproduzione dell'animazione ora è ridotta ai nanosecondi (If776a)
- L'artefatto Composer:runtime-submit è deprecato. MonotonicFrameClock è ora disponibile in composizione:runtime e AndroidUiDispatcher si trova in write:ui. (Ib5c36).
- Hai aggiunto
Animation.isInfinite
eVectorizedAnimationSpec.isInfinite
che indicano se un'animazione viene può essere infinito o meno. Può essere usato nelle implementazioni di animazioni per hanno una gestione speciale di queste animazioni. Ad esempio, uno speciale "orario rimanenti" visualizzare un messaggio di errore oppure durante i test l'animazione annullata per evitare di attendere a tempo indeterminato l'inattività. (Iebb05, b/151940543) - Utilizza Lungo al posto di Uptime come tipo di tempo dell'animazione (Ie3aa7, b/177420019)
Versione 1.0.0-alpha11
28 gennaio 2021
Vengono rilasciate le versioni androidx.compose.animation:animation:1.0.0-alpha11
e androidx.compose.animation:animation-core:1.0.0-alpha11
. La versione 1.0.0-alpha11 contiene questi commit.
Modifiche alle API
- La transizione basata su TransactionDefinition è stata ritirata (I0ac57)
- Viene aggiunto un campo Etichetta per Transizione e animazioni secondarie da visualizzare negli strumenti (I619fb)
- animateAsState è ora animatoFooAsState, dove Foo è tipo di variabile animata. ad es. Float, Dp, Offset e così via (Ie7e25)
- La nuova versione di InfiniteTransizione che esegue un numero qualsiasi animazioni secondarie. (I1da81)
- Modifica le interfacce dei parametri stateful Material in modo che abbiano funzioni @Composable che restituiscono
State<T>
. Aggiunge Animatable.asState() per facilitare la conversione di un oggetto Animatable in uno stato. Modifica inoltre animazioneElevation in modo che diventi un'estensione di sospensione su Animatable. (If613c).
Correzioni di bug
- onCommit, onDispose e onActive sono stati deprecati in favore delle API SideEffect e DisposableEffect (If760e)
- Lo stato iniziale in updateTransizione è ora supportato (Ifd51d)
- Il parametro della descrizione dei contenuti è stato aggiunto a Immagine e Icona. Viene utilizzato per fornire una descrizione dei servizi di accessibilità (I2ac4c)
- invalidate e composizioneReference() sono ora deprecate in favore rispettivamente di currentRecomposeScope e ricomponinciavoce. (I583a8)
- Durata e Uptime verranno sostituiti con Long millisecondi, e questo passaggio rimuove la dipendenza dell'input del puntatore su quelle . (Ia33b2, b/175142755, b/177420019)
- Ora è possibile creare elementi cliccabili, attivabili e selezionabili al di fuori della composizione (I0a130, b/172938345, b/175294473)
- L'easing è stato cambiato in un'interfaccia funzionale (Ib14e5)
- Nuovo metodo di fabbrica
items(count: Int)
per l'ambito di LazyColumn/LazyRow/LazyVerticalGrid.items(items: List)
eitemsIndexed(items: List)
sono ora funzioni di estensione, quindi devi importarle manualmente quando vengono utilizzate. Sovraccarico di nuove estensioni per gli array: items(items: Array) e itemsIndexed(Array) (I803fc, b/175562574) - Utilizzare TestCoroutineDispatcher per i test (I532b6)
- PointerInputData rimossi e PointerInputChange modificato per assegnare tutti i campi di PointerInputData. Fatto PointerInputEvent e PointerInputEventData interni perché non sono utilizzati in qualsiasi API pubblica. (Ifff97, b/175142755)
Versione 1.0.0-alpha10
13 gennaio 2021
Vengono rilasciate le versioni androidx.compose.animation:animation:1.0.0-alpha10
e androidx.compose.animation:animation-core:1.0.0-alpha10
. La versione 1.0.0-alpha10 contiene questi commit.
Modifiche alle API
- Velocità modificata per avere parti componenti e calcoli operazioni. (Ib0447)
@ExperimentalTesting
è stato rinominato in@ExperimentalTestApi
coerente con annotazioni API sperimentali simili (Ia4502, b/171464963)- Il nome della posizione è stato cambiato in DpOffset e è stato rimosso il metodo getDistance() (Ib2dfd)
- Rimozione dell'API pubblica Any.identityHashCode() (I025d7)
Correzioni di bug
- Nuova API basata su coroutine
Animatable
che garantisce l'esclusività reciproca tra le sue animazioni. Nuovo DecayAnimationSpec per supportare l'animazione del decadimento multidimensionale (I820f2, b/168014930) animate()
è ora sostituito conanimateAsState()
, che restituisceState<T>
anzichéT
. Ciò consente di ottenere perché l'ambito di annullamento della convalida può essere ristretto dove viene letto il valore dello stato. (Ib179e)
Versione 1.0.0-alpha09
16 dicembre 2020
Vengono rilasciate le versioni androidx.compose.animation:animation:1.0.0-alpha09
e androidx.compose.animation:animation-core:1.0.0-alpha09
. La versione 1.0.0-alpha09 contiene questi commit.
Modifiche alle API
- Dp.VectorConverter, Position.VectorConverter spostati e così via in animazione-core e ha deprecato i vecchi VectorConveters (If0c4b)
- Introduzione di un set completamente nuovo di API Transizione con miglioramenti la facilità d'uso e il supporto per l'aggiunta dinamica di animazioni target dell'animazione calcolati. Queste API sono contrassegnate come sperimentali per una facile differenziazione dall'API basata su TransitionDefinition. (Ia7fe3)
Correzioni di bug
- Le funzioni Lambda nei modificatori di offset ora restituiscono IntOffset anziché Float. (Ic9ee5, b/174137212, b/174146755)
- Ritirare LazyColumnFor, LazyRowFor, LazyColumnForIndexed e LazyRowForIndexed. Usa LazyColumn e LazyRow (I5b48c)
- Per sospendere le API di input del puntatore, Da HandlePointerInputScope ad AwaitPointerEventScope e handlePointerInput() ad awaitPointerEventScope(). (Idf0a1, b/175142755)
- Nuova funzione infiniteRipetibile per la creazione di una InfiniteRipetiableSpec (I668e5)
- Rimossa l'annotazione ExperimentalPointerInput (Ia7a24)
Versione 1.0.0-alpha08
2 dicembre 2020
Vengono rilasciate le versioni androidx.compose.animation:animation:1.0.0-alpha08
e androidx.compose.animation:animation-core:1.0.0-alpha08
. La versione 1.0.0-alpha08 contiene questi commit.
Modifiche alle API
- È stato aggiunto il controllo del lint per la denominazione e la posizione dei parametri lambda componibili al fine di verificare la coerenza con le linee guida di Compose.
Inoltre, è stata eseguita la migrazione di alcune API utilizzando
children
come nome per il lambda finale incontent
, in base al controllo del lint e alle indicazioni. (Iec48e) - Le API precedentemente deprecate sono state rimosse:
- L'elemento
Modifier.onPositioned
è stato rimosso; utilizzaModifier.onGloballyPositioned
. - L'elemento
Modifier.onDraw
è stato rimosso; utilizzaModifier.onDrawBehind
. - L'elemento
Modifier.plus
è stato rimosso; utilizzaModifier.then
. - L'elemento
Color.Unset
è stato rimosso; utilizzaColor.Unspecified
. PxBounds
corso è stato rimosso. UsaRect
al suo posto.- (Ie9d02, b/172562222)
- L'elemento
- Aggiunta temporanea dell'opzione per consentire il funzionamento di TestAnimationClock gestito dal MonotonicFrameClock (I1403b, b/173402197)
Correzioni di bug
- Modifier.drawlayer rinominato in Modifier.graphicslayer Sono state aggiornate anche le classi correlate a Graphicslayer in base a Feedback API Council. (I0bd29, b/173834241)
- Aggiunta Modifier.scale/rotate aggiunto
le API per il drawlayer.
- Modifier.drawOpacity è stato rinominato in Modifier.alpha
- Modifier.drawShadow rinominato in Modifier.shadow (I264ca, b/173208140)
- l'uptime di PointerInputData e nei campi di posizione non assegnabili. (ID468a)
- I modificatori offsetPx sono stati rinominati in offset. Prende i parametri lambda anziché i parametri State. (Ic3021, b/173594846)
- Nuove API per l'esecuzione di animazioni nelle coroutine (Ied662)
- Ambienti deprecati denominati con
Ambient
come suffisso e sostituiti con nuove proprietà con prefisso Ambient, conformi alle altre linee guida dell'API Ambient e Compose. (I33440) - Il controllo del tempo nei test (TestAnimationClock e relativi utilizzi) è ora in fase sperimentale (I6ef86, b/171378521)
- Rimuovi il vecchio modulo di test dell'ui e i relativi stub (I3a7cb)
- La funzione
RestorableStateHolder.withRestorableState
è stata rinominata inRestorableStateProvider
(I66640) - L'interfaccia di Allineamento è stata aggiornata e resa funzionale. (I46a07, b/172311734)
Versione 1.0.0-alpha07
11 novembre 2020
Vengono rilasciate le versioni androidx.compose.animation:animation:1.0.0-alpha07
e androidx.compose.animation:animation-core:1.0.0-alpha07
. La versione 1.0.0-alpha07 contiene questi commit.
Correzioni di bug
- Gli elementi di base AmbientTextStyle, ProvideTextStyle e AmbientContentColor sono stati deprecati. Utilizza invece le nuove versioni disponibili nella libreria Material. Per le applicazioni non Material, devi invece creare un tuo sistema di progettazione specifico per la tematizzazione, che possono essere utilizzati nei tuoi componenti. (I74acc, b/172067770)
- Foundation.Text è stato deprecato e sostituito con material.Text. Per un'API di testo di base non definita che non utilizza valori di un tema, vedi androidx.compose.foundation.BasicText. (If64cb)
- MeasureResult è stato spostato fuori da MeasureScope. (Ibf96d, b/171184002)
- Diversi simboli relativi al layout sono stati spostati da androidx.compose.ui ad androidx.compose.layout.ui. (I0fa98, b/170475424)
Versione 1.0.0-alpha06
28 ottobre 2020
Vengono rilasciate le versioni androidx.compose.animation:animation:1.0.0-alpha06
e androidx.compose.animation:animation-core:1.0.0-alpha06
. La versione 1.0.0-alpha06 contiene questi commit.
Modifiche alle API
- Abilita le transizioni in ComposeTestRule; rimuovi l'opzione per attivare il cursore lampeggiante da ComposeTestRule. (If0de3).
Versione 1.0.0-alpha05
14 ottobre 2020
Vengono rilasciate le versioni androidx.compose.animation:animation:1.0.0-alpha05
e androidx.compose.animation:animation-core:1.0.0-alpha05
. La versione 1.0.0-alpha05 contiene questi commit.
Modifiche alle API
- Nuova interfaccia di animazione e sottoclassi: queste classi archiviare le condizioni di inizio e fine per le animazioni; pertanto, consente l'esecuzione di query su valore e velocità solo tramite riproduzione (Ie95bd, b/163329867)
Correzioni di bug
- OnPositionedModifier è stato rinominato OnGloballyPositionedModifier mentre onPositioned() è il nuovo nome onGloballyPositioned(). (I587e8, b/169083903)
Ritira le API contentColor() e currentTextStyle() e le sostituisce rispettivamente con gli ambienti AmbientContentColor e AmbientTextStyle. Puoi accedere al valore corrente utilizzando
.current
nella proprietà Ambient, come con qualsiasi altro Ambient. Questa modifica è stata apportata per garantire la coerenza e evitare di avere più modi per ottenere lo stesso risultato. Inoltre, rinomina alcune proprietà Ambient per descriverne meglio lo scopo come segue:- ContentColorAmbient -> Colore contenuti ambientali
- Stile di testo Ambient -> Stile di testo ambientale
- IndicationAmbient -> Indicatore Ambient
- Enfasi Ambient -> Livelli di Emphasis Ambient
- RippleThemeAmbient -> AmbientRippleTheme (I37b6d)
Versione 1.0.0-alpha04
1° ottobre 2020
Vengono rilasciate le versioni androidx.compose.animation:animation:1.0.0-alpha04
e androidx.compose.animation:animation-core:1.0.0-alpha04
. La versione 1.0.0-alpha04 contiene questi commit.
Modifiche alle API
- Annotated rootAnimationClock Fabbrica, transizionisEnabled, blinkingCursorEnabled e textInputServiceFA con @VisibileForTesting, imposta l'API interna e nascondi il file kdoc (I554eb, b/168308412)
Correzioni di bug
- Aggiornamento di molte API grafiche
- Scalabilità e rotazione aggiornate API di trasformazione per utilizzare una singola Parametro di offset per rappresentare il pivot coordinata invece di numero in virgola mobile separato per le coordinate x/y in DrawScope e DrawTransform
- Rimossi Rect.expandToInclude e Rect.join metodi
- Documentazione Raggio aggiornata per indicare ovale oltre all'ellittica,
- È stata aggiunta la documentazione che indica costruttore pubblico per il raggio in linea non venga chiamata direttamente, ma È necessario creare un'istanza per gli oggetti raggio i loro costruttori di funzioni
- Rimosse le API RoundRect per eseguire query in topRight, in basso a destra, in basso al centro ecc.
- Rect.shift obsoleto in favore di Rect.translate
- Rimosse le API RoundRect.grow e Rect.shrink
- RoundRect.outerRect rinominato in Rect.boundingRect
- Rimosso RoundRect.middleRect/tallMiddleRect/wideMiddleRect e Rect.isStadium
- RoundRect.longestSide è stato rinominato RoundRect.maxDimensione
- RoundRect.shortestSide è stato rinominato RoundRect.minDimensione
- RoundRect.center modificato in una proprietà anziché in una funzione
- Costruttore RoundRect aggiornato per utilizzare le proprietà Raggio anziché i singoli parametri per i valori del raggio x/y
- Rimosse le API Dimensioni che supponevano che si trattasse di un rettangolo con origine a 0,0
- Aggiunta di un'API di distruzione a Radius
- Migrazione di varie funzioni di estensione RoundRect in modo che proprietà
- (I8f5c7, b/168762961)
- Foundation.Box è stato deprecato. Usa il metodo ground.layout.Box. (Ie5950, b/167680279)
- Stack è stato rinominato Box. Il formato Box esistente in precedenza verrà ritirato e sostituito con il nuovo Box all'indirizzo composizione.foundation.layout. Il comportamento del nuovo riquadro consiste nell'impilare gli elementi secondari uno sopra l'altro quando sono presenti più elementi secondari. È diverso dal riquadro precedente, che aveva un comportamento simile a quello di una colonna. (I94893, b/167680279)
- I parametri per la decorazione della casella sono stati ritirati. Se vuoi aggiungere decorazioni/spaziature sulla scatola, usa i Modifiers (Modifier.background, Modifier.edge, Modifier.padding) (Ibae92, b/167680279).
- Abbiamo impedito le importazioni statiche dei contenuti degli ambiti di layout (ad es.alignWithSiblings in RowScope). Al suo posto, è necessario utilizzare l'alternativa relativa all'ambito esplicito:
with(RowScope) { Modifier.alignWithSiblings(FirstBaseline) }
. (I216be, b/166760797)
Versione 1.0.0-alpha03
16 settembre 2020
Vengono rilasciate le versioni androidx.compose.animation:animation:1.0.0-alpha03
e androidx.compose.animation:animation-core:1.0.0-alpha03
. La versione 1.0.0-alpha03 contiene questi commit.
Correzioni di bug
- Gli utilizzi della gravità sono stati rinominati in modo coerente in allineamento o allineamento nelle API di layout. (I2421a, b/164077038)
Versione 1.0.0-alpha02
2 settembre 2020
Vengono rilasciate le versioni androidx.compose.animation:animation:1.0.0-alpha02
e androidx.compose.animation:animation-core:1.0.0-alpha02
. La versione 1.0.0-alpha02 contiene questi commit.
Modifiche alle API
È stato aggiunto
ManualFrameClock.hasAwaiters
per controllare se c'è qualcosa in attesa di un frame da quell'orologio;runWithManualClock
come sostituzione perrunBlocking
quando si eseguono test che richiedono un ManualFrameClock;TestUiDispatcher.Main
che consente un facile accesso al committente principale dell'UI nei tuoi test.Ad esempio:
@Test fun myTest() = runWithManualClock { clock -> // set some compose content withContext(TestUiDispatcher.Main) { clock.advanceClock(1000L) } if (clock.hasAwaiters) { println("The clock has awaiters") } else { println("The clock has no more awaiters") } }
Correzioni di bug
onPreCommit è deprecato; Il comando onCommit ora include il comando onPreCommit comportamento degli utenti.
onCommit e onActive vengono ora eseguiti nello stesso frame del coreografo le modifiche alla composizione vengono applicate invece che all'inizio del prossimo fotogramma del coreografo. (I70403)
Versione 1.0.0-alpha01
26 agosto 2020
Vengono rilasciate le versioni androidx.compose.animation:animation:1.0.0-alpha01
e androidx.compose.animation:animation-core:1.0.0-alpha01
. La versione 1.0.0-alpha01 contiene questi commit.
Versione 0.1.0-dev
Versione 0.1.0-dev17
19 agosto 2020
Vengono rilasciate le versioni androidx.compose.animation:animation:0.1.0-dev17
e androidx.compose.animation:animation-core:0.1.0-dev17
. La versione 0.1.0-dev17 contiene questi commit.
Nuove funzionalità
Modifiche alle API
- L'offset è diventato una classe in linea (Iaec70)
- IntOffset è ora una classe in linea (Iac0bf)
- IntSize ora è una classe in linea (I2bf42)
L'elemento componibile AnimatedVisibilty anima l'aspetto e la scomparsa dei contenuti secondari.
Entrambe le transizioni sono state introdotte con la transizione componibile di AnimatedVisibilty per fornire 3 tipi diversi di animazione di aspetto e scomparsa: dissolvenza, scorrimento e espandi/restringi i contenuti. I diversi tipi di animazioni possono essere combinati per ottenere un aspetto più personalizzato. (Idda11)
PxBound deprecati in a favore di Rect. Tutti gli utilizzi sono stati aggiornati di PxBounds con rettangolo e aggiunto ritirarli/sostituire correttamente annotazioni per supportare il migrazione. (I37038, b/162627058)
Correzioni di bug
PlacementScope.placeAbsolute()
è stato rinominato inPlacementScope.place()
e laPlacementScope.place()
precedente è stata rinominataPlacementScope.placeRelative()
. Di conseguenza, il metodoPlacementScope.place()
non rispecchierà più automaticamente la posizione in contesti con scrittura da destra a sinistra. Se vuoi, puoi usare il criterioPlacementScope.placeRelative()
. (I873ac, b/162916675)- Il componibile
state { ... }
è ora deprecato e sostituito con inviti espliciti aremember { mutableStateOf(...) }
per maggiore chiarezza. Ciò riduce la superficie complessiva dell'API e il numero di concetti per lo stato gestione e corrisponde al patternby mutableStateOf()
per la classe delega delle proprietà. (Ia5727)
Versione 0.1.0-dev16
5 agosto 2020
Vengono rilasciate le versioni androidx.compose.animation:animation:0.1.0-dev16
e androidx.compose.animation:animation-core:0.1.0-dev16
. La versione 0.1.0-dev16 contiene questi commit.
Modifiche alle API
- Convertitori vettoriali integrati per la conversione
unità sono ora accessibili tramite
Foo.VectorConverter
. ad es.Dp.VectorConverter
,Color.VectorConverter
,Float.VectorConverter
e così via (I3e273) - Supporta il listener finale in
Modifier.animateContentSize()
in modo che, al termine dell'animazione di modifica delle dimensioni, il listener verrà inviata una notifica, insieme alle dimensioni di inizio/fine dell'animazione. (I277b2). - Nuovo modificatore animatoContentSize che anima modifica delle dimensioni del layout del relativo modificatore secondario (Ieffdc)
È stato aggiunto l'elemento
MonotonicFrameAnimationClock
che ti consente di utilizzare una MonotonicFrameClock nei panni diAnimationClockObservable
per colmare il divario tra i nuovi orologi basati su coroutine e le API che utilizzano ancora il vecchio orologi basati su callback.L'
MonotonicFrameClock
equivalente diManualAnimationClock
è oraManualFrameClock
. (I111c7, b/161247083)
Correzioni di bug
- Le API per il supporto da destra a sinistra sono state aggiornate. È stato aggiunto LayoutDirectionAmbient, che può essere utilizzato per leggere e modificare la direzione del layout. Modifier.rtl e Modifier.ltr sono stati rimossi. (I080b3)
- Richiedi che il tipo T sia specificato esplicitamente per transizioniDefinition. (I1aded)
- Il pacchetto Fundamentals.shape.corner è stato appiattito a Foundation.share (I46491, b/161887429)
- Modifier.plus è stato ritirato. Usa Modifier.then al suo posto. 'Allora' ha un segnale di ordinamento più forte, ma vieta anche di digitare
Modifier.padding().background() + anotherModifier
, il che spezza la catena e rende più difficile da leggere (Iedd58, b/161529964) - Modifier.drawBackground è stato rinominato in Modifier.background (I13677)
Versione 0.1.0-dev15
22 luglio 2020
Vengono rilasciate le versioni androidx.compose.animation:animation:0.1.0-dev15
e androidx.compose.animation:animation-core:0.1.0-dev15
. La versione 0.1.0-dev15 contiene questi commit.
Aggiornamento delle dipendenze
- Per utilizzare la versione
0.1.0-dev15
di Compose, dovrai aggiornare le dipendenze in base ai nuovi snippet di codice mostrati sopra nella sezione Dichiarazione delle dipendenze.
Modifiche alle API
- L'API Transizione è stata modificata per restituire un TransizioneState anziché passare lo stato Transizione. per i bambini. Questo rende l'API più coerente API animate(). (I24e38).
- Parametro di modifica aggiunto per dissolvenza incrociata (I87cfe, b/159706180)
- Usa AnimationSpec anziché AnimationBuilder nelle API di primo livello
per chiarire il concetto di specifica dell'animazione statica.
- Migliora la transizione DSL rimuovendo il requisito lambda per creando AnimationSpecs come tween, spring. Prendono e i parametri del costruttore.
- Migliora la facilità d'uso generale dell'apertura di AnimationSpec anziché fare affidamento sui builder
- Modifica la durata e il ritardo dei fotogrammi chiave e del Tween in Int. Questo elimina i cast di tipi non necessari e il sovraccarico dei metodi (ad che supportano sia Long che Int). (Ica0b4)
- È stato sostituito l'utilizzo di IntPx con Int. IntPxPosition sostituita con IntOffset. IntPxSize sostituito con IntSize. (Ib7b44).
- Per consolidare i numero di classi utilizzate per rappresentare sulle dimensioni, standardizza sull'utilizzo della classe Dimensioni, di PxSize. Questo offre i vantaggi di una classe in linea per sfruttare per pacchettizzare 2 valori in virgola mobile per rappresentare larghezza e altezza rappresentate da numeri in virgola mobile. (Ic0191)
- Per consolidare i numero di classi utilizzate per rappresentare le informazioni di posizionamento, standardizzare sull'uso della classe Offset di PxPosition. Questo offre i vantaggi di una classe in linea per sfruttare per raggruppare 2 valori in virgola mobile che rappresentano x e gli offset y rappresentati come numeri in virgola mobile. (I3ad98)
- Utilizzo della classe Px sostituito in varie comporre classi nell'ambito della grande di refactoring facendo affidamento solo sul Dp e tipi primitivi per i parametri dei pixel (I086f4)
- Aggiunto il supporto della funzione animate() per Dp, Px, Dimensione, Posizione, Limiti, PxPosition, PxSize, PxBounds, IntPx, IntPxSize, IntPxPosition IntPxBounds e AnimationVector (Ib7518)
- La dissolvenza incrociata ora accetta il parametro AnimationBuilder facoltativo per consentire la configurazione dell'animazione (I6d6e0)
- Sostituiti tutti gli utilizzi dei colori null nell'API sostituiti con non null e utilizza Color.Unset anziché null (Iabaa7)
- Rimossa la classe ValueHolder. Ristrutturate le classi AnimatedValue, animateFloat per
rendi astratto il campo dei valori dell'animazione in modo che le sottoclassi possano osservare l'aggiornamento del valore.
- Sono state aggiunte classi di modello per AnimatedValue, AnimatedFloat e così via.
- È stato aggiunto un nuovo set di API @Composable leggeri per l'animazione tra i valori. (I79530)
- Interruzione delle modifiche all'API Ambient. Per informazioni dettagliate, consulta la documentazione relativa al log e a
Ambient<T>
(I4c7ee, b/143769776) - Nuova modalità di ripetizione: inversa. Questa modalità inverte la precedente con un'iterazione che si ripete quando l'animazione si ripete in RipetibileSpec o VectorizedRipetiableSpec. (Ibe0f5)
- Aggiunte all'API ManualAnimationClock:
hasObservers: Boolean
e il parametro del costruttoredispatchOnSubscribe: Boolean
(Iaa134) - Sono state aggiunte API per ottenere limiti minimi e massimi in AnimatedFloat (Icd9cc)
Correzioni di bug
runOnIdleCompose
rinominato inrunOnIdle
(I83607)- Diverse API di test sono state rinominate per essere più intuitive. Tutti Le API di FindXYZ sono state rinominate onNodeXYZ. Tutte le API doXYZ sono state rinominate in esegui XYZ. (I7f164)
- Sono state introdotte le API di animazione stateless di basso livello. Queste API (I63bf7)
- Ricomponi componibile non è più un'astrazione utile. La maggior parte delle ricomposizioni dovrebbe avvenire in base alle assegnazioni MutableState. Per qualsiasi altro problema, ti consigliamo di utilizzare la funzione
invalidate
per attivare una ricomposizione dell'ambito attuale. (Ifc992). - Utilizzo della classe Px sostituito in varie comporre classi nell'ambito della grande di refactoring facendo affidamento solo sul Dp e tipi primitivi per i parametri dei pixel. Classe Px eliminata nella sua interezza (I3ff33)
- Utilizzo della classe Px sostituito in varie comporre classi nell'ambito della grande di refactoring facendo affidamento solo sul Dp e tipi primitivi per i parametri dei pixel (Id3434)
- La dissolvenza incrociata ora può funzionare con null come valore iniziale (Iad6a4, b/155947711)
- Utilizzo della classe Px sostituito in varie comporre classi nell'ambito della grande di refactoring facendo affidamento solo sul Dp e tipi primitivi per i parametri dei pixel (I19d02)
- Implementazioni consolidate di CanvasScope Ora ci sono solo DrawScope e ContentDrawScope CanvasScope rinominato in DrawScope. DrawScope aggiornato per implementare la Densità all'interfaccia e fornisce LayoutDirection Sottoclasse DrawScope eliminata in ContentDrawScope Painter e PainterModifier sono stati aggiornati per non mantenere più una proprietà RTL poiché DrawScope fornisce già questa funzionalità, senza fornirlo manualmente (I1798e)
- Aggiornato a un livello superiore che espongono un elemento Canvas esponi CanvasScope. Questa operazione rimuove la necessità da parte dei consumatori di mantenere oggetti Paint. Per i consumatori che richiedono comunque l'accesso a Canvas è possibile usare l'estensione drawCanvas che fornisce un callback al problema di tracciare i comandi con Tela. (I80afd)
- Sono stati aggiunti i parametri verticalGravity e HorizontalGravity a Row e Column. (I7dc5a)
- Il modulo ui-text è stato rinominato ui-text-core (I57dec)
- Migliora l'API DrawModifier:
- Ambito del ricevitore per draw() ContentDrawScope
- Sono stati rimossi tutti i parametri in draw()
- DrawScope ha la stessa interfaccia del precedente CanvasScope
- ContentDrawScope ha il metodo drawContent() (Ibaced, b/152919067)
runOnIdleCompose
erunOnUiThread
sono ora funzioni globali invece dei metodi su ComposeTestRule. (Icbe8f)- [Mutable]Operatori dei delegati delle proprietà statali spostati nelle estensioni
per supportare le ottimizzazioni dei delegati per le proprietà Kotlin 1.4. I chiamanti devono aggiungere
importazioni per continuare a utilizzare
by state { ... }
oby mutableStateOf(...)
. (I5312c) - ColoredRect è stato ritirato. Usa invece il criterio
Box(Modifier.preferredSize(width, height).drawBackground(color))
. (I499fa, b/152753731) - Sostituito Modificatore più operatore con funzioni di estensione di fabbrica (I225e4)
- Elemento componibile del Centro deprecato. Deve essere sostituito con il modificatore LayoutSize.Fill + LayoutAllinea.Center oppure con uno dei componibili Box o Stack con i modificatori adatti applicati (Idf5e0).
- Il nome LayoutFlessibile è stato rinominato in LayoutWeight. Parametro stretto rinominato da riempire. (If4738)
- La funzione componibile opacità è stata sostituita con il tasto di modifica drawOpacity. (I5fb62)
- I test con AndroidComposeTestRule ora forniscono un'animazione alla radice della composizione che consente di metterla in pausa, sia ripresa e avanzata manualmente. (ID54c5)
- Supporto della direzione da destra a sinistra nel modificatore di LayoutPadding (I9e8da)
- Density e DensityScope sono stati uniti in un'unica interfaccia. Al posto di ambientDensity() ora puoi usare DensityAmbient.current. Invece di withDensity(density) solo with(density) (I11cb1)
- Sono stati aggiunti metodi di copia a vari
tipi di classi incorporate, tra cui:
- Offset
- Dimensioni
- Raggio
- Movimento
- OrigineTrasformazione
- Metodo dell'oggetto companion size.copy deprecato favore del metodo di copia dell'istanza (Ife290, b/159905651)
- L'elemento androidx.compose.ViewComposer è stato spostato in androidx.ui.node.UiComposer
Il file androidx.compose.Emittable è stato rimosso. Era ridondante con ComponentNode.
Il comando androidx.compose.ViewAdapters è stato rimosso. Non sono più un caso d'uso supportato.
L'API Compose.composeInto è stata ritirata. Usa invece
setContent
osetViewContent
. L'API Compose.disposeCompose è stata deprecata. Utilizza invece il metododispose
nella colonnaComposition
restituita dasetContent
. Il file androidx.compose.Compose.subcomposeInto è stato spostato in androidx.ui.core.subcomposeInto ComponentNode#emitInsertAt è stato rinominato in ComponentNode#insertAt ComponentNode#emitRemoveAt è stato rinominato in ComponentNode#removeAt ComponentNode#emitMode è stato rinominato in ComponentNode#move (Idef00)