Animation erstellen
androidx.compose.animation
androidx.compose.animation.core
androidx.compose.animation.graphics
(Siehe API-Referenzdokumentation für alle Erstellungspakete)
Letzte Aktualisierung | Stabile Version | Releasekandidat | Beta-Ausgabe | Alpha-Release |
---|---|---|---|---|
4. September 2024 | 1.7.0 | - | - | 1.8.0-alpha01 |
Struktur
Compose ist eine Kombination aus sieben Maven-Gruppen-IDs innerhalb von androidx
. Jede Gruppe
enthält eine ausgewählte Teilmenge von Funktionen, jede mit ihren eigenen Release-Sätzen
Notizen.
In dieser Tabelle werden die Gruppen und Links zu den einzelnen Versionshinweisen erläutert.
Gruppe | Beschreibung |
---|---|
compose.animation: | Animationen in den Jetpack Compose-Anwendungen erstellen, um die User Experience zu bereichern |
compose.compiler | @Composable-Funktionen transformieren und Optimierungen mit einem Kotlin-Compiler-Plug-in aktivieren. |
compose.foundation | Schreiben Sie Jetpack Compose-Anwendungen mit gebrauchsfertigen Bausteinen und erweitern Sie die Grundlage für den Aufbau Ihrer eigenen Designsysteme. |
compose.material | Jetpack Compose-UIs mit einsatzbereiten Material Design-Komponenten erstellen Dies ist der übergeordnete Einstiegspunkt von Compose. Hier werden Komponenten bereitgestellt, die den unter www.material.io beschriebenen Komponenten entsprechen. |
compose.material3 einfügen | Jetpack Compose-UIs mit Material Design 3 Components erstellen, der nächsten Entwicklung des Material Design Material 3 enthält aktualisierte Designs und Komponenten sowie Funktionen zur Personalisierung von Material You wie dynamische Farben. Das Produkt wurde so entwickelt, dass es zum visuellen Stil und zur System-UI von Android 12 passt. |
compose.runtime | Grundlegende Bausteine des Programmiermodells und der Statusverwaltung von Compose sowie die zentrale Laufzeit für das Compose-Compiler-Plug-in. |
compose.ui | Grundlegende Komponenten der Benutzeroberfläche zum Schreiben von E-Mails, die für die Interaktion mit dem Gerät erforderlich sind, darunter Layout, Zeichnen und Eingabe |
Abhängigkeiten deklarieren
Wenn Sie eine Abhängigkeit von Compose hinzufügen möchten, müssen Sie das Maven-Repository von Google zu Ihrem Projekt arbeiten. Maven-Repository von Google lesen .
Fügen Sie der Datei build.gradle
die Abhängigkeiten für die Artefakte hinzu, die Sie benötigen
Ihre App oder Ihr Modul:
Cool
dependencies { implementation "androidx.compose.animation:animation:1.7.0" } android { buildFeatures { compose true } composeOptions { kotlinCompilerExtensionVersion = "1.5.15" } kotlinOptions { jvmTarget = "1.8" } }
Kotlin
dependencies { implementation("androidx.compose.animation:animation:1.7.0") } android { buildFeatures { compose = true } composeOptions { kotlinCompilerExtensionVersion = "1.5.15" } kotlinOptions { jvmTarget = "1.8" } }
Weitere Informationen zu Abhängigkeiten finden Sie unter Build-Abhängigkeiten hinzufügen.
Feedback
Dein Feedback hilft uns, Jetpack zu verbessern. Teilen Sie uns mit, wenn Sie neue Ausgaben entdecken oder zur Verbesserung dieser Bibliothek. In der bestehende Probleme in dieser Bibliothek, bevor Sie eine neue erstellen. So können Sie für ein vorhandenes Problem abstimmen: indem Sie auf die Sternschaltfläche klicken.
Weitere Informationen finden Sie in der Dokumentation zur Problemverfolgung. .
Version 1.8
Version 1.8.0-alpha01
4. September 2024
androidx.compose.animation:animation-*:1.8.0-alpha01
wurde veröffentlicht. Version 1.8.0-alpha01 enthält diese Commits.
Neue Funktionen
- Neue
Modifier.animateBounds
API zur Animation von Größen- und Positionsänderungen innerhalb eines Lookahead-Bereichs. 94b9394
API-Änderungen
- Experimentelle Flags für Keyframes mit Bögen und Splines entfernen (89e1199)
Fehlerkorrekturen
- Problem behoben, bei dem
SharedTransitionScope
unter bestimmten Bedingungen keine Elemente zeichnet (b41077b6) placeHolderSize
-Logik überspringen, wenn keine Übereinstimmung gefunden wird (77c0160)- Verringern Sie die Abspielzeit in
AndroidFlingSpline
, um Abstürze aufgrund einer nicht kontinuierlich steigenden Abspielzeit zu vermeiden(9d47587).
Externer Beitrag
- Einstellung „Suchbarer Übergang
playTime
“ verhindern, wenn c2e6e7e6 kein Übergang ausgeführt wird
Version 1.7
Version 1.7.0
4. September 2024
androidx.compose.animation:animation-*:1.7.0
wurde veröffentlicht.
Wichtige Änderungen seit Version 1.6.0
Wichtige Änderungen in Version 1.7.0 werden in diesem Blogpost behandelt.
Neue APIs für die Umstellung auf freigegebene Elemente
- Neue APIs zum Wechsel von gemeinsam genutzten Elementen warten auf Ihre Nutzung und Ihr Feedback. Diese neuen experimentellen APIs ermöglichen Tagging von Layouts, die mithilfe der bereitgestellten Modifikatoren in der Layoutstruktur gemeinsam genutzt werden. Dabei werden sich nahtlos ändernde Grenzen erzeugt, wenn ein Satz freigegebener Inhalte den Vorgang verlässt und der andere Satz eintritt. (Icb0b9)
- Neue
scaleInSharedContentToBounds
undscaleOutSharedContentToBounds
zum Skalieren von Inhalten insharedBounds
(I731c1) - Die experimentelle Funktion
SharedTransitionScope
ist jetzt eine Benutzeroberfläche statt einer Klasse. (Iaf856) - Neue
resizeModes
(ScaleToBounds
undRemeasureToBounds
) fürsharedBounds
zur Auswahl zwischen Skalierung und Neumessung. Die vorherigenscaleIn/OutSharedContentToBounds
APIs wurden verworfen. (I0d41a)
Verbesserungen an bestehenden APIs:
- Neue
Modifier.animateContentSize
, die einen zusätzlichen Parameter für die benutzerdefinierte Inhaltsausrichtung verwendet. (I5623a, b/269803907) - Neue experimentelle
DeferredTargetAnimation
zur Animation von Größe, Position oder einem anderen Ziel, das während der Instanziierung unbekannt ist. (I60745) SeekableTransitionState
ersetztsnapTo()
durchseekTo()
und fügt einensnapTo()
-Wert hinzu, der den Status sofort und ohne jede Art von Animation in einen Zielstatus ändert.- Sie können nun einen
periodicBias
-Wert (Gleitkommazahl) ankeyframesWithSpline
übergeben, damit die Anfangs- und Endgeschwindigkeit des Spline gleich sind. Nützlich für wiederholbare Animationen mit Splines. Die Verzerrung gibt an, wie stark jede Geschwindigkeit (anfänglich und endgültig) modifiziert wird, um die Periodizität zu erreichen. (Ic1e6c, b/292114811)
Die folgenden APIs sind stabil oder wurden entfernt:
AnimatedVisibilityScope.transition
ist jetzt eine stabile API.Modifier.animateEnterExit(..)
ist ebenfalls stabil. (I6c1d1)ApproachLayoutModifierNode
undModifier.approachLayout
sind jetzt stabil. Das alteisMeasurementApproachComplete()
bzw.isPlacementApproachComplete()
wird durch die neuenisMeasurementApproachInProgress()
undisPlacementApproachInProgress()
ersetzt.- Eingestellter
intermediateLayout
-Modifikator wurde entfernt. (I3e91c) LookaheadScope
APIs sind jetzt stabil. (I21507)
Version 1.7.0-rc01
21. August 2024
androidx.compose.animation:animation-*:1.7.0-rc01
wurde veröffentlicht. Version 1.7.0-rc01 enthält diese Commits.
Version 1.7.0-beta07
7. August 2024
androidx.compose.animation:animation-*:1.7.0-beta07
wurde veröffentlicht. Version 1.7.0-beta07 enthält diese Commits.
Fehlerkorrekturen
- Problem behoben, bei dem
SharedTransitionScope
unter bestimmten Bedingungen während des Übergangs keine Overlay-Elemente zeichnete, die normalerweise die Nutzung mit Navigation beinhalten. (Id65ab, b/347520198)
Version 1.7.0-beta06
24. Juli 2024
androidx.compose.animation:animation-*:1.7.0-beta06
wurde veröffentlicht. Version 1.7.0-beta06 enthält diese Commits.
Fehlerkorrekturen
SeekableTransition
undichte Übergangsstatus wurden behoben, indem Beobachtungen ausSnapshotStateObserver
ordnungsgemäß bereinigt wurden, wenn der Übergang entsorgt wurde. (b9c7182)- Grenzfälle behoben, bei denen untergeordnete Übergänge nach Abschluss des übergeordneten Elements nicht korrekt als abgeschlossen gekennzeichnet wurden. (dc42216)
Version 1.7.0-beta05
10. Juli 2024
androidx.compose.animation:animation-*:1.7.0-beta05
wurde veröffentlicht. Version 1.7.0-beta05 enthält diese Commits.
Fehlerkorrekturen
- Die Übergangseigenschaft
totalDurationNanos
kann jetzt innerhalb einessnapshotFlow
korrekt gelesen werden.
Version 1.7.0-beta04
26. Juni 2024
androidx.compose.animation:animation-*:1.7.0-beta04
wurde veröffentlicht. Version 1.7.0-beta04 enthält diese Commits.
Version 1.7.0-beta03
12. Juni 2024
androidx.compose.animation:animation-*:1.7.0-beta03
wurde veröffentlicht. Version 1.7.0-beta03 enthält diese Commits.
Version 1.7.0-beta02
29. Mai 2024
androidx.compose.animation:animation-*:1.7.0-beta02
wurde veröffentlicht. Version 1.7.0-beta02 enthält diese Commits.
Version 1.7.0-beta01
14. Mai 2024
androidx.compose.animation:animation-*:1.7.0-beta01
wurde veröffentlicht. Version 1.7.0-beta01 enthält diese Commits.
API-Änderungen
- Neue
resizeModes
(ScaleToBounds
undRemeasureToBounds
) fürsharedBounds
zur Auswahl zwischen Skalierung und Neumessung. Die vorherigenscaleIn/OutSharedContentToBounds
APIs wurden verworfen. (I0d41a)
Externer Beitrag
- Die experimentelle Funktion
SharedTransitionScope
ist jetzt eine Benutzeroberfläche statt einer Klasse. (Iaf856, b/338415048, b/338414702)
Version 1.7.0-alpha08
1. Mai 2024
androidx.compose.animation:animation-*:1.7.0-alpha08
wurde veröffentlicht. Version 1.7.0-alpha08 enthält diese Commits.
API-Änderungen
LookaheadScope
APIs sind jetzt stabil. (I21507)
Externer Beitrag
- Startzeit der Animation löschen, nachdem
SeekableTransitionState
durch Steven Schoen animiert oder aufgenommen wurde (1ca89529)
Version 1.7.0-alpha07
17. April 2024
androidx.compose.animation:animation-*:1.7.0-alpha07
wurde veröffentlicht. Version 1.7.0-alpha07 enthält diese Commits.
Neue Funktionen
- Neue APIs zum Wechsel von gemeinsam genutzten Elementen warten auf Ihre Nutzung und Ihr Feedback. Diese neuen experimentellen APIs ermöglichen Tagging von Layouts, die mithilfe der bereitgestellten Modifikatoren in der Layoutstruktur gemeinsam genutzt werden. Dabei werden sich nahtlos ändernde Grenzen erzeugt, wenn ein Satz freigegebener Inhalte den Vorgang verlässt und der andere Satz eintritt. (Icb0b9)
- Neue
scaleInSharedContentToBounds
undscaleOutSharedContentToBounds
zum Skalieren von Inhalten insharedBounds
(I731c1)
API-Änderungen
AnimatedVisibilityScope.transition
ist jetzt eine stabile API.Modifier.animateEnterExit(..)
ist ebenfalls stabil. (I6c1d1)ApproachLayoutModifierNode
undModifier.approachLayout
sind jetzt stabil. Das alteisMeasurementApproachComplete()
bzw.isPlacementApproachComplete()
wird durch die neuenisMeasurementApproachInProgress()
undisPlacementApproachInProgress()
ersetzt.- Eingestellter
intermediateLayout
-Modifikator wurde entfernt. (I3e91c) - Sie können nun einen
periodicBias
-Wert (Gleitkommazahl) ankeyframesWithSpline
übergeben, damit die Anfangs- und Endgeschwindigkeit des Spline gleich sind. Nützlich für wiederholbare Animationen mit Splines. Die Verzerrung gibt an, wie stark jede Geschwindigkeit (anfänglich und endgültig) modifiziert wird, um die Periodizität zu erreichen. (Ic1e6c, b/292114811)
Fehlerkorrekturen
- Die Easing-Kurven der Über- und Unterlappungen wurden korrigiert, die zuvor auf 0 bis 1 gebunden waren (I38747).
Version 1.7.0-alpha06
3. April 2024
androidx.compose.animation:animation-*:1.7.0-alpha06
wurde veröffentlicht. Version 1.7.0-alpha06 enthält diese Commits.
Neue Funktionen
- Die Unterstützung für Animationen für das Erscheinungsbild und das Verschwinden von Elementen wurde in
LazyColumn
undLazyRow
hinzugefügt. Bisher war es möglich, denModifier.animateItemPlacement()
-Modifikator hinzuzufügen, um Animationen für die Platzierung (Neuanordnung) zu unterstützen. Wir haben diesen Modifikator eingestellt und einen neuen nicht experimentellen Modifikator namensModifier.animateItem()
eingeführt, mit dem alle drei Animationstypen unterstützt werden: Erscheinungsbild (Einblenden), Verschwinden (Ausblenden) und Neuanordnung. (I2d7f7, b/330152398, b/150812265)
Fehlerkorrekturen
- Verbesserte Leistung der
updateTransition
API.
Version 1.7.0-alpha05
20. März 2024
androidx.compose.animation:animation-*:1.7.0-alpha05
wurde veröffentlicht. Version 1.7.0-alpha05 enthält diese Commits.
API-Änderungen
SeekableTransitionState
ersetztsnapTo()
durchseekTo()
und fügt einensnapTo()
-Wert hinzu, der den Status sofort und ohne jede Art von Animation in einen Zielstatus ändert.
Version 1.7.0-alpha04
6. März 2024
androidx.compose.animation:animation-*:1.7.0-alpha04
wurde veröffentlicht. Version 1.7.0-alpha04 enthält diese Commits.
API-Änderungen
- Neue API
Path.reverse()
zum Umkehren der Pfadrichtung (I36348)
Version 1.7.0-alpha03
21. Februar 2024
androidx.compose.animation:animation-*:1.7.0-alpha03
wurde veröffentlicht. Version 1.7.0-alpha03 enthält diese Commits.
Neue Funktionen
- Neue
Modifier.animateContentSize
, die einen zusätzlichen Parameter für die benutzerdefinierte Inhaltsausrichtung verwendet. (I5623a, b/269803907) - Neue experimentelle
DeferredTargetAnimation
zur Animation von Größe, Position oder einem anderen Ziel, das während der Instanziierung unbekannt ist. (I60745)
Version 1.7.0-alpha02
7. Februar 2024
androidx.compose.animation:animation-*:1.7.0-alpha02
wurde veröffentlicht. Version 1.7.0-alpha02 enthält diese Commits.
Fehlerkorrekturen
- Kompatibilitätskorrektur für
KeyframesSpec
. (I2bdf3, b/322214617) - Problem behoben, bei dem
Modifier.animateContentSize
bei Verwendung inLazyList
nicht richtig zurückgesetzt wurde. (I070512, b/322525716) - Das Problem
IllegalStateException
beiKeyframesSpec
bei Verwendung von Zeitstempeln außerhalb des Bereichs wurde behoben. (I341b8, b/322839811)
Version 1.7.0-alpha01
24. Januar 2024
androidx.compose.animation:animation-*:1.7.0-alpha01
wurde veröffentlicht. Version 1.7.0-alpha01 enthält diese Commits.
Version 1.6
Version 1.6.8
12. Juni 2024
androidx.compose.animation:animation-*:1.6.8
wurde veröffentlicht. Version 1.6.8 enthält diese Commits.
Version 1.6.7
1. Mai 2024
androidx.compose.animation:animation-*:1.6.7
wurde veröffentlicht. Version 1.6.7 enthält diese Commits.
Version 1.6.6
17. April 2024
androidx.compose.animation:animation-*:1.6.6
wurde veröffentlicht. Keine Änderungen seit dem vorherigen Release
Version 1.6.5
3. April 2024
androidx.compose.animation:animation-*:1.6.5
wurde veröffentlicht. Version 1.6.5 enthält diese Commits.
Version 1.6.4
20. März 2024
androidx.compose.animation:animation-*:1.6.4
wurde veröffentlicht. Version 1.6.4 enthält diese Commits.
Version 1.6.3
6. März 2024
androidx.compose.animation:animation-*:1.6.3
wurde veröffentlicht. Version 1.6.3 enthält diese Commits.
Version 1.6.2
21. Februar 2024
androidx.compose.animation:animation-*:1.6.2
wurde veröffentlicht. Version 1.6.2 enthält diese Commits.
Version 1.6.1
7. Februar 2024
androidx.compose.animation:animation-*:1.6.1
wurde veröffentlicht. Version 1.6.1 enthält diese Commits.
Fehlerkorrekturen
- Kompatibilitätskorrektur für
KeyframesSpec
. (I2bdf3, b/322214617)
Version 1.6.0
24. Januar 2024
androidx.compose.animation:animation-*:1.6.0
wurde veröffentlicht. Version 1.6.0 enthält diese Commits.
Version 1.6.0-rc01
10. Januar 2024
androidx.compose.animation:animation-*:1.6.0-rc01
wurde veröffentlicht. Version 1.6.0-rc01 enthält diese Commits.
Version 1.6.0-beta03
13. Dezember 2023
androidx.compose.animation:animation-*:1.6.0-beta03
wurde veröffentlicht. Version 1.6.0-beta03 enthält diese Commits.
API-Änderungen
scaleInToFitContainer
undscaleOutToFitContainer
wurden vorübergehend ausAnimatedContentTransitionScope
entfernt, da sie einen Lookahead erfordern. Sie werden verfügbar sein, wenn Lookahead standardmäßig aktiviert ist oder in zukünftigen Releases aktiviert ist.
Version 1.6.0-beta02
29. November 2023
androidx.compose.animation:animation-*:1.6.0-beta02
wurde veröffentlicht. Version 1.6.0-beta02 enthält diese Commits.
Version 1.6.0-beta01
15. November 2023
androidx.compose.animation:animation-*:1.6.0-beta01
wurde veröffentlicht. Version 1.6.0-beta01 enthält diese Commits.
API-Änderungen
ExitTransition.Hold
wurde inExitTransition.KeepUntilTransitionsFinished
umbenannt, um deutlicher zu werden. (I1c490)- Sie können jetzt
keyframesWithSpline
verwenden, um beliebige n-dimensionale Werte mit monotonen Splines zu interpolieren. Es ist besonders nützlich, Positionswerte wieOffset
,IntOffset
undDpOffset
zu interpolieren. Als experimentelle API hinzugefügt.
Fehlerkorrekturen
- Renderer-Unterstützung für „Erledigen“-Gradient in
ArcLine
wurde hinzugefügt. (I4d5bb) - Implementiere Gleichheits- und Hashcode für
PageSize.Fixed
. (Ie3ede, b/300134276) - Binär-Kompatibilitätsproblem bei der Änderung von Window Inset wurde behoben. (Iee695)
- Entferne die Materialkernschicht für den Material3-Chip/die Schaltfläche, da die Mikro-Benchmarks auch ohne sie eine bessere Leistung zeigen. (I55555)
Version 1.6.0-alpha08
18. Oktober 2023
androidx.compose.animation:animation-*:1.6.0-alpha08
wurde veröffentlicht. Version 1.6.0-alpha08 enthält diese Commits.
API-Änderungen
KeyframesSpecConfig#with
wurde zugunsten vonKeyframesSpecConfig#using
verworfen, wodurch das Builder-Muster beibehalten wird. (I1d769)
Version 1.6.0-alpha07
4. Oktober 2023
androidx.compose.animation:animation-*:1.6.0-alpha07
wurde veröffentlicht. Version 1.6.0-alpha07 enthält diese Commits.
API-Änderungen
- Tabs mit festem und scrollbarem Tab haben jetzt eine primäre und eine sekundäre Variante. Diese entsprechen der in Material3 definierten Farbe und dem Indikatorverhalten korrekt.
PrimaryScrollableTabRow
undSecondaryScrollableTabRow
zeigen jetzt den Scrollstatus an. (Iec8f5, b/260572337)
Version 1.6.0-alpha06
20. September 2023
androidx.compose.animation:animation-*:1.6.0-alpha06
wurde veröffentlicht. Version 1.6.0-alpha06 enthält diese Commits.
Version 1.6.0-alpha05
6. September 2023
androidx.compose.animation:animation-*:1.6.0-alpha05
wurde veröffentlicht. Version 1.6.0-alpha05 enthält diese Commits.
API-Änderungen
PathEasing
wurde hinzugefügt, damit ein beliebiger Pfad an eine Easing-Kurve übergeben werden kann. (Idb4b9)
Version 1.6.0-alpha04
23. August 2023
androidx.compose.animation:animation-*:1.6.0-alpha04
wurde veröffentlicht. Version 1.6.0-alpha04 enthält diese Commits.
API-Änderungen
- Fügen Sie
SeekableTransitionState
hinzu, damit Entwickler den Fortschritt einer Umstellung steuern können. (I8e69d)
Version 1.6.0-alpha03
9. August 2023
androidx.compose.animation:animation-*:1.6.0-alpha03
wurde veröffentlicht. Version 1.6.0-alpha03 enthält diese Commits.
API-Änderungen
- Neuer Typ von Übergang zwischen Ein- und Ausblenden, bei dem der Inhalt an die Größe des Animationscontainers beim Betreten und Beenden angepasst wird Beenden Sie die Animation.
LookaheadScope
Der zusammensetzbare Spaß und die Benutzeroberfläche sind jetzt stabil. (Ifb2ce)
Version 1.6.0-alpha02
26. Juli 2023
androidx.compose.animation:animation-*:1.6.0-alpha02
wurde veröffentlicht. Version 1.6.0-alpha02 enthält diese Commits.
API-Änderungen
- Neue
ExitTransition.Hold
zur Anzeige ausgehender Inhalte inAnimatedContent
, bis beide eingegeben und Exit-Übergang abgeschlossen. (I5984f) - Zusätzliche Anmerkungen zur Angabe zulässiger Eingaben für zusammensetzbare Funktionen (I51109)
Version 1.6.0-alpha01
21. Juni 2023
androidx.compose.animation:animation-*:1.6.0-alpha01
wurde veröffentlicht. Version 1.6.0-alpha01 enthält diese Commits.
Neue Funktionen
- Aktivieren Sie die vollständige Integration von
Modifier.animateContentSize
undAnimatedVisibility
in das Lookahead-System, indem die Zielgröße im Lookahead-Pass gemeldet wird.
API-Änderungen
- Neue Property in
IntrinsincMeasureScope
und ihren Implementierungen (z.B.MeasureScope
), die angibt, ob die aktuelle Messungskarte eine Lookahead-Karte ist. (I7a812)
Fehlerkorrekturen
- Zuweisungen aus Frühlingsanimationen wurden entfernt. (Ie9431)
- Name des Wertparameters für „Enum.valueOf“ geändert (Ia9b89)
- mehr ausgelöste Ausnahmen von enum valueOf (I818fe)
Version 1.5
Version 1.5.4
18. Oktober 2023
androidx.compose.animation:animation-*:1.5.4
wurde veröffentlicht. Version 1.5.4 enthält diese Commits.
Version 1.5.3
4. Oktober 2023
androidx.compose.animation:animation-*:1.5.3
wurde veröffentlicht. In dieser Version wurden keine Änderungen vorgenommen
Version 1.5.2
27. September 2023
androidx.compose.animation:animation-*:1.5.2
wurde veröffentlicht. Version 1.5.2 enthält diese Commits.
Version 1.5.1
6. September 2023
androidx.compose.foundation:foundation-*:1.5.1
wurde veröffentlicht. Version 1.5.1 enthält diese Commits.
Fehlerkorrekturen
- Textfelder, die die Tastatur anzeigen und bearbeitbar sind, wenn
readOnly
auf „true“ gesetzt ist, wurden korrigiert. Außerdem wurde behoben, dass die Tastatur nicht angezeigt wurde, wennreadOnly
im Fokus von "true" zu "false" geändert wurde. (I34a19, b/246909589)
Version 1.5.1
6. September 2023
androidx.compose.animation:animation-*:1.5.1
wurde veröffentlicht. Version 1.5.1 enthält diese Commits.
Version 1.5.0
9. August 2023
androidx.compose.animation:animation-*:1.5.0
wurde veröffentlicht. Version 1.5.0 enthält diese Commits.
Version 1.5.0-rc01
26. Juli 2023
androidx.compose.animation:animation-*:1.5.0-rc01
wurde veröffentlicht. Version 1.5.0-rc01 enthält diese Commits.
Fehlerkorrekturen
Es wurde ein Problem behoben, bei dem beim Aufrufen von
.value
für einen primitiven Zustandstyp wieMutableIntState
eine Lint-Warnung mit einer ungültigen Korrektur gemeldet wurde. Bei der Prüfung wird nun empfohlen, zur richtigen Property zu migrieren. (Iba953, b/287279257)Es ist eine optionale Prüfung verfügbar, um zu empfehlen,
mutableStateOf()
-Aufrufe zu den entsprechenden speziellen Typen für Primitive zu migrieren. Die Lint-ID lautetAutoboxingStateCreation
. Bisher war diese Prüfung standardmäßig für alle Projekte aktiviert. Wenn Sie diese Warnung im Android Studio-Editor und in den Lint-Ausgaben Ihres Projekts sehen möchten, ändern Sie den Schweregrad von „Informativ“ zu „Warnung“ (oder höher). Deklarieren Sie dazuwarning "AutoboxingStateCreation"
in derbuild.gradle
- oderbuild.gradle.kts
-Konfiguration Ihres Moduls (I34f7e):android { lint { warning "AutoboxingStateCreation" } ... }
Version 1.5.0-beta03
28. Juni 2023
androidx.compose.animation:animation-*:1.5.0-beta03
wurde veröffentlicht. Version 1.5.0-beta03 enthält diese Commits.
Version 1.5.0-beta02
7. Juni 2023
androidx.compose.animation:animation-*:1.5.0-beta02
wurde veröffentlicht. Version 1.5.0-beta02 enthält diese Commits.
Version 1.5.0-beta01
24. Mai 2023
androidx.compose.animation:animation-*:1.5.0-beta01
wurde veröffentlicht. Version 1.5.0-beta01 enthält diese Commits.
API-Änderungen
- Zuweisungen bei Neuzusammensetzung, Farbanimationen und
AndroidComposeView
(Ib2bfa) wurden entfernt.
Fehlerkorrekturen
- Zuweisungen aus Federanimationen entfernt (Ie9431)
Version 1.5.0-alpha04
10. Mai 2023
androidx.compose.animation:animation-*:1.5.0-alpha04
wurde veröffentlicht. Version 1.5.0-alpha04 enthält diese Commits.
API-Änderungen
ContentKey
wird jetzt inAnimatedContent
unterstützt, um mehr Kontrolle darüber zu haben, wann der Wechsel stattfinden soll. (IC069b)
Version 1.5.0-alpha03
19. April 2023
androidx.compose.animation:animation-*:1.5.0-alpha03
wurde veröffentlicht. Version 1.5.0-alpha03 enthält diese Commits.
Neue Funktionen
- Neues Standardverhalten für
SubcomposeLayout
inLookaheadScope
. Damit könnenSubcomposeLayouts
ohne bedingte Slots (z. B.TabRow
,Scaffold
,BoxWithConstraints
usw.) gut mit Lookahead-Animationen verwendet werden.
API-Änderungen
- Mit der neuen Standard-
intermediateMeasurePolicy
, die die Messungsrichtlinie aus dem Lookahead-Pass wiederverwendet, könnenSubcomposeLayout
-Untertypen ohne bedingte Slots wieScaffold
,TabRow
undBoxWithConstraints
standardmäßig mit Lookaheads verwendet werden. (Id84c8) - Benennen Sie infix-Spaß in
togetherWith
um, um Übergänge beim Ein- und Ausblenden zu kombinieren. NeuerAnimatedContentScope
als Empfänger für das Lambda-Ergebnis. (Ic39ae)
Version 1.5.0-alpha02
5. April 2023
androidx.compose.animation:animation-*:1.5.0-alpha02
wurde veröffentlicht. Version 1.5.0-alpha02 enthält diese Commits.
Neue Funktionen
- Neue experimentelle API zur Unterstützung eines Lookaheads in
SubcomposeLayout
. Nur so funktioniertSubcomposeLayout
in einerLookaheadScope
ordnungsgemäß. Demnächst werden bestimmteSubcomposeLayout
-Subtypen sofort unterstützt.
API-Änderungen
- Neue
SubcomposeLayout
API, die eine zusätzliche Richtlinie für Zwischenmengen zur Verarbeitung von Mess-/Layoutlogik während auf Lookaheads basierende Animationen. (I017d3)
Version 1.5.0-alpha01
22. März 2023
androidx.compose.animation:animation-*:1.5.0-alpha01
wurde veröffentlicht. Version 1.5.0-alpha01 enthält diese Commits.
API-Änderungen
AnimatedContent
APIs sind jetzt stabil.AnimatedContentScope
wurde inAnimatedContentTransitionScope
umbenannt.scaleIn
undscaleOut
sind jetzt stabile APIs. (Iaf54e)
Version 1.4
Version 1.4.3
3. Mai 2023
androidx.compose.animation:animation:1.4.3
, androidx.compose.animation:animation-core:1.4.3
und androidx.compose.animation:animation-graphics:1.4.3
werden ohne Änderungen veröffentlicht (nur ein Versionssprung).
Version 1.4.2
19. April 2023
androidx.compose.animation:animation:1.4.2
, androidx.compose.animation:animation-core:1.4.2
und androidx.compose.animation:animation-graphics:1.4.2
wurden ohne Änderungen veröffentlicht. Version 1.4.2 enthält diese Commits.
Version 1.4.1
5. April 2023
androidx.compose.animation:animation:1.4.1
, androidx.compose.animation:animation-core:1.4.1
und androidx.compose.animation:animation-graphics:1.4.1
wurden ohne Änderungen veröffentlicht. Version 1.4.1 enthält diese Commits.
Version 1.4.0
22. März 2023
androidx.compose.animation:animation:1.4.0
, androidx.compose.animation:animation-core:1.4.0
und androidx.compose.animation:animation-graphics:1.4.0
wurden veröffentlicht. Version 1.4.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.3.0
- Tool-Labels werden in r
ememberInfiniteTransition
und allen Erweiterungsfunktionen fürInfiniteTransition
und Übergang unterstützt (z.B.InfiniteTransition#animateColor
) (I56ef7)
Version 1.4.0-rc01
8. März 2023
androidx.compose.animation:animation:1.4.0-rc01
, androidx.compose.animation:animation-core:1.4.0-rc01
und androidx.compose.animation:animation-graphics:1.4.0-rc01
wurden ohne Änderungen veröffentlicht. Version 1.4.0-rc01 enthält diese Commits.
Version 1.4.0-beta02
22. Februar 2023
androidx.compose.animation:animation:1.4.0-beta02
, androidx.compose.animation:animation-core:1.4.0-beta02
und androidx.compose.animation:animation-graphics:1.4.0-beta02
wurden ohne Änderungen veröffentlicht. Version 1.4.0-beta02 enthält diese Commits.
Version 1.4.0-beta01
8. Februar 2023
androidx.compose.animation:animation:1.4.0-beta01
, androidx.compose.animation:animation-core:1.4.0-beta01
und androidx.compose.animation:animation-graphics:1.4.0-beta01
wurden ohne Änderungen veröffentlicht. Version 1.4.0-beta01 enthält diese Commits.
Version 1.4.0-alpha05
25. Januar 2023
androidx.compose.animation:animation:1.4.0-alpha05
, androidx.compose.animation:animation-core:1.4.0-alpha05
und androidx.compose.animation:animation-graphics:1.4.0-alpha05
wurden veröffentlicht. Version 1.4.0-alpha05 enthält diese Commits.
Änderungen
- Keine Änderungen an Animationsbibliotheken seit der letzten Alphaversion, nur Version Bump
Version 1.4.0-alpha04
11. Januar 2023
androidx.compose.animation:animation:1.4.0-alpha04
, androidx.compose.animation:animation-core:1.4.0-alpha04
und androidx.compose.animation:animation-graphics:1.4.0-alpha04
wurden veröffentlicht. Version 1.4.0-alpha04 enthält diese Commits.
Neue Funktionen
- Tool-Labels werden in
rememberInfiniteTransition
und allen Erweiterungsfunktionen aufInfiniteTransition
undTransition
unterstützt (z.B.InfiniteTransition#animateColor
) (I56ef7)
API-Änderungen
- Die APIs
InfiniteTransition#TransitionAnimationState
undInfiniteTransition#animations
sind jetzt öffentlich. (I36682)
Version 1.4.0-alpha03
7. Dezember 2022
androidx.compose.animation:animation:1.4.0-alpha03
, androidx.compose.animation:animation-core:1.4.0-alpha03
und androidx.compose.animation:animation-graphics:1.4.0-alpha03
wurden veröffentlicht. Version 1.4.0-alpha03 enthält diese Commits.
API-Änderungen
- Bei UI-Tests mit einer Schreibregel werden Fortsetzungen, die während
withFrameNanos
-Callbacks fortgesetzt werden, erst abgesendet, nachdem alle Frame-Callbacks ausgeführt wurden. Dies entspricht dem Verhalten des Editors bei normaler Ausführung. Tests, die auf dem alten Verhalten basieren, können jedoch fehlschlagen. Dies sollte nur Code betreffen, derwithFrameNanos
oderwithFrameMillis
direkt aufruft und bei dem die Logik außerhalb des Callbacks an die Funktionen übergeben wird, die möglicherweise innerhalb der Callbacks verschoben werden müssen. Beispiele finden Sie in den Änderungen an den Animationstests in dieser Änderungsliste. - Ein optionaler
onPerformTraversals: (Long) -> Unit
-Parameter wurde demTestMonotonicFrameClock
-Konstruktor und der Factory-Funktion hinzugefügt, um Code nachwithFrameNanos
-Callbacks auszuführen, aber bevor die Aufrufer fortgesetzt werden Koroutinen. (Idb413, b/254115946, b/222093277, b/255802670) - Neuer Parameter in
AnimatedContent
für Tool-Label (Iebe2d)
Version 1.4.0-alpha02
9. November 2022
androidx.compose.animation:animation:1.4.0-alpha02
, androidx.compose.animation:animation-core:1.4.0-alpha02
und androidx.compose.animation:animation-graphics:1.4.0-alpha02
wurden veröffentlicht. Version 1.4.0-alpha02 enthält diese Commits.
API-Änderungen
ToolingState
hinzufügen, damit Tools den internen Status von Composable ändern können (Ie6614)
Version 1.4.0-alpha01
24. Oktober 2022
androidx.compose.animation:animation:1.4.0-alpha01
, androidx.compose.animation:animation-core:1.4.0-alpha01
und androidx.compose.animation:animation-graphics:1.4.0-alpha01
wurden veröffentlicht. Version 1.4.0-alpha01 enthält diese Commits.
Fehlerkorrekturen
- Falsche Unterbrechungsanimation in animateContent korrigieren (b/238662479)
Version 1.3
Version 1.3.3
11. Januar 2023
androidx.compose.animation:animation:1.3.3
, androidx.compose.animation:animation-core:1.3.3
und androidx.compose.animation:animation-graphics:1.3.3
wurden veröffentlicht. Version 1.3.3 enthält diese Commits.
- Keine Änderungen seit Version 1.3.2.
Version 1.3.2
7. Dezember 2022
androidx.compose.animation:animation:1.3.2
, androidx.compose.animation:animation-core:1.3.2
und androidx.compose.animation:animation-graphics:1.3.2
wurden veröffentlicht. Version 1.3.2 enthält diese Commits.
Fehlerkorrekturen
- Aktualisiert, um androidx.compose.ui 1.3.2 zu unterstützen
Version 1.3.1
9. November 2022
androidx.compose.animation:animation:1.3.1
, androidx.compose.animation:animation-core:1.3.1
und androidx.compose.animation:animation-graphics:1.3.1
wurden veröffentlicht. Version 1.3.1 enthält diese Commits.
Version 1.3.0
24. Oktober 2022
androidx.compose.animation:animation:1.3.0
, androidx.compose.animation:animation-core:1.3.0
und androidx.compose.animation:animation-graphics:1.3.0
wurden veröffentlicht. Version 1.3.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.2.0
- Neue Easing-Funktionen werden stabilisiert
Version 1.3.0-rc01
5. Oktober 2022
androidx.compose.animation:animation:1.3.0-rc01
, androidx.compose.animation:animation-core:1.3.0-rc01
und androidx.compose.animation:animation-graphics:1.3.0-rc01
wurden veröffentlicht. Version 1.3.0-rc01 enthält diese Commits.
Version 1.3.0-beta03
21. September 2022
androidx.compose.animation:animation:1.3.0-beta03
, androidx.compose.animation:animation-core:1.3.0-beta03
und androidx.compose.animation:animation-graphics:1.3.0-beta03
wurden veröffentlicht. Version 1.3.0-beta03 enthält diese Commits.
- Keine Änderungen seit 1.3.0-beta02.
Version 1.3.0-beta02
7. September 2022
androidx.compose.animation:animation:1.3.0-beta02
, androidx.compose.animation:animation-core:1.3.0-beta02
und androidx.compose.animation:animation-graphics:1.3.0-beta02
wurden veröffentlicht. Version 1.3.0-beta02 enthält diese Commits.
- Kotlin.experimental wurde aus den Compileroptionen entfernt, da es verworfen wurde.
Version 1.3.0-beta01
24. August 2022
androidx.compose.animation:animation:1.3.0-beta01
, androidx.compose.animation:animation-core:1.3.0-beta01
und androidx.compose.animation:animation-graphics:1.3.0-beta01
wurden veröffentlicht. Version 1.3.0-beta01 enthält diese Commits.
Version 1.3.0-alpha03
10. August 2022
androidx.compose.animation:animation:1.3.0-alpha03
, androidx.compose.animation:animation-core:1.3.0-alpha03
und androidx.compose.animation:animation-graphics:1.3.0-alpha03
wurden veröffentlicht. Version 1.3.0-alpha03 enthält diese Commits.
API-Änderungen
- Neuer Parameter in
Crossfade
,animateAsState
undAnimatable
für Tool-Label (Iac08a) - Die Funktion
atFraction
wurde hinzugefügt, um Keyframes für einen Bruch statt an einer bestimmten Dauer zu definieren. (I20c76, b/232059455)
Version 1.3.0-alpha02
27. Juli 2022
androidx.compose.animation:animation:1.3.0-alpha02
, androidx.compose.animation:animation-core:1.3.0-alpha02
und androidx.compose.animation:animation-graphics:1.3.0-alpha02
wurden veröffentlicht. Version 1.3.0-alpha02 enthält diese Commits.
Version 1.3.0-alpha01
29. Juni 2022
androidx.compose.animation:animation:1.3.0-alpha01
, androidx.compose.animation:animation-core:1.3.0-alpha01
und androidx.compose.animation:animation-graphics:1.3.0-alpha01
wurden veröffentlicht. Version 1.3.0-alpha01 enthält diese Commits.
API-Änderungen
- Neue
LookaheadLayout
, die eine Lookahead-Passung vor der tatsächlichen Messung/dem tatsächlichen Layout unterstützt. So kann das Layout bei Änderungen vorab berechnet werden. Gleichzeitig kann der Post-Lookahead-Messwert bzw. das Post-Layout die vorab berechnete Größe/Position verwenden, um die Größe und die Positionen in Richtung des Ziels zu animieren.SubcomposeLayouts
wird noch nicht unterstützt, ist aber in einer künftigen Version geplant. (I477f5)
Version 1.2
Version 1.2.1
10. August 2022
androidx.compose.animation:animation:1.2.1
, androidx.compose.animation:animation-core:1.2.1
und androidx.compose.animation:animation-graphics:1.2.1
wurden veröffentlicht. Version 1.2.1 enthält diese Commits.
Version 1.2.0
27. Juli 2022
androidx.compose.animation:animation:1.2.0
, androidx.compose.animation:animation-core:1.2.0
und androidx.compose.animation:animation-graphics:1.2.0
wurden veröffentlicht. Version 1.2.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.1.0
- Bei der Erstellungsanimation wird jetzt die Skala der Animator-Dauer unterstützt in den Entwickleroptionen.
- Große Auswahl neuer experimenteller Easing-Kurven
AnimatedImageVector
unterstützt jetztrepeatCount
undrepeatMode
Version 1.2.0-rc03
29. Juni 2022
androidx.compose.animation:animation:1.2.0-rc03
, androidx.compose.animation:animation-core:1.2.0-rc03
und androidx.compose.animation:animation-graphics:1.2.0-rc03
wurden veröffentlicht. Version 1.2.0-rc03 enthält diese Commits.
- Keine Änderungen seit 1.2.0 bis rc02.
Version 1.2.0-rc02
22. Juni 2022
androidx.compose.animation:animation:1.2.0-rc02
, androidx.compose.animation:animation-core:1.2.0-rc02
und androidx.compose.animation:animation-graphics:1.2.0-rc02
wurden veröffentlicht. Version 1.2.0-rc02 enthält diese Commits.
Fehlerkorrekturen
ExperimentalEasingApi
-Anmerkung zu Easing-Funktionen entfernt (Ied441)
Version 1.2.0-rc01
15. Juni 2022
androidx.compose.animation:animation:1.2.0-rc01
, androidx.compose.animation:animation-core:1.2.0-rc01
und androidx.compose.animation:animation-graphics:1.2.0-rc01
wurden veröffentlicht. Version 1.2.0-rc01 enthält diese Commits.
API-Änderungen
- Schnittstellen in Erstellungsbibliotheken werden jetzt mit jdk8-Standardschnittstellenmethoden erstellt (I5bcf1).
Version 1.2.0-beta03
1. Juni 2022
androidx.compose.animation:animation:1.2.0-beta03
, androidx.compose.animation:animation-core:1.2.0-beta03
und androidx.compose.animation:animation-graphics:1.2.0-beta03
wurden veröffentlicht. Version 1.2.0-beta03 enthält diese Commits.
API-Änderungen
- Experimentelle Easing-Kurven für Animationen hinzugefügt (I64a38)
Version 1.2.0-beta02
18. Mai 2022
androidx.compose.animation:animation:1.2.0-beta02
, androidx.compose.animation:animation-core:1.2.0-beta02
und androidx.compose.animation:animation-graphics:1.2.0-beta02
wurden veröffentlicht. Version 1.2.0-beta02 enthält diese Commits.
Version 1.2.0-beta01
11. Mai 2022
androidx.compose.animation:animation:1.2.0-beta01
, androidx.compose.animation:animation-core:1.2.0-beta01
und androidx.compose.animation:animation-graphics:1.2.0-beta01
wurden veröffentlicht. Version 1.2.0-beta01 enthält diese Commits.
- Dies ist die erste Betaversion von Version 1.2. Seit der letzten Alphaversion hat es keine Änderungen gegeben.
Version 1.2.0-alpha08
20. April 2022
androidx.compose.animation:animation:1.2.0-alpha08
, androidx.compose.animation:animation-core:1.2.0-alpha08
und androidx.compose.animation:animation-graphics:1.2.0-alpha08
wurden veröffentlicht. Version 1.2.0-alpha08 enthält diese Commits.
Version 1.2.0-alpha07
6. April 2022
androidx.compose.animation:animation:1.2.0-alpha07
, androidx.compose.animation:animation-core:1.2.0-alpha07
und androidx.compose.animation:animation-graphics:1.2.0-alpha07
wurden veröffentlicht. Version 1.2.0-alpha07 enthält diese Commits.
API-Änderungen
AnimatedImageVector
unterstützt jetztrepeatCount
undrepeatMode
(Ia3e75, b/199304067)
Version 1.2.0-alpha06
23. März 2022
androidx.compose.animation:animation:1.2.0-alpha06
, androidx.compose.animation:animation-core:1.2.0-alpha06
und androidx.compose.animation:animation-graphics:1.2.0-alpha06
wurden veröffentlicht. Version 1.2.0-alpha06 enthält diese Commits.
API-Änderungen
- Das Parsen von Vektor-Drawables wurde aktualisiert, um die automatische Spiegelung zu unterstützen und den Inhalt einer
VectorPainter
umzudrehen, wenn die aktuelle Layoutrichtung RTL ist. (I79cd9, b/185760237)
Fehlerkorrekturen
- Vektorgrafik-APIs wurden aktualisiert, sodass die korrekte zusammensetzbare Anmerkung
@VectorComposable
anstelle von@UiComposable
verwendet wird (I942bc).
Version 1.2.0-alpha05
9. März 2022
androidx.compose.animation:animation:1.2.0-alpha05
, androidx.compose.animation:animation-core:1.2.0-alpha05
und androidx.compose.animation:animation-graphics:1.2.0-alpha05
wurden veröffentlicht. Version 1.2.0-alpha05 enthält diese Commits.
API-Änderungen
- Super! Texterstellungsanimationen werden jetzt unterstützt „Animator Duration scale“ (Animator-Dauerskala) in den Entwickleroptionen. (I5a4fc, b/161675988)
Version 1.2.0-alpha04
23. Februar 2022
androidx.compose.animation:animation:1.2.0-alpha04
, androidx.compose.animation:animation-core:1.2.0-alpha04
und androidx.compose.animation:animation-graphics:1.2.0-alpha04
wurden veröffentlicht. Version 1.2.0-alpha04 enthält diese Commits.
Version 1.2.0-alpha03
9. Februar 2022
androidx.compose.animation:animation:1.2.0-alpha03
, androidx.compose.animation:animation-core:1.2.0-alpha03
und androidx.compose.animation:animation-graphics:1.2.0-alpha03
wurden veröffentlicht. Version 1.2.0-alpha03 enthält diese Commits.
Version 1.2.0-alpha02
26. Januar 2022
androidx.compose.animation:animation:1.2.0-alpha02
, androidx.compose.animation:animation-core:1.2.0-alpha02
und androidx.compose.animation:animation-graphics:1.2.0-alpha02
wurden veröffentlicht. Version 1.2.0-alpha02 enthält diese Commits.
Version 1.2.0-alpha01
12. Januar 2022
androidx.compose.animation:animation:1.2.0-alpha01
, androidx.compose.animation:animation-core:1.2.0-alpha01
und androidx.compose.animation:animation-graphics:1.2.0-alpha01
wurden veröffentlicht. Version 1.2.0-alpha01 enthält diese Commits.
API-Änderungen
- Verwenden Sie
AnimatedImageVector.animatedVectorResource
anstelle vonanimatedVectorResource
, um eine<animated-vector>
-Ressourcendatei zu laden.- Verwende
rememberAnimatedVectorResource
anstelle vonAnimatedImageVector#painterFor
, um einAnimatedImageVector
zu rendern. (I9c300)
- Verwende
Fehlerkorrekturen
- Fügen Sie toString-Methoden zu Animatable und AnimationResult hinzu. (Icd3a6)
Aktualisierung der Abhängigkeiten
- Jetzt abhängig von Kotlin-
1.6.10
.
Version 1.1
Version 1.1.1
23. Februar 2022
androidx.compose.animation:animation:1.1.1
, androidx.compose.animation:animation-core:1.1.1
und androidx.compose.animation:animation-graphics:1.1.1
wurden veröffentlicht. Version 1.1.1 enthält diese Commits.
Fehlerkorrekturen
- Problem mit
NullPointerException
unterandroidx.compose.ui.platform.RenderNodeLayer.updateDisplayList
beheben (aosp/1947059, b/206677462) - Absturz behoben, der durch Inhalte in der Zwischenablage beim Lesen von die Zwischenablage auf Android-Geräten. (I06020, b/197769306)
- RTL-Fehler in
LazyVerticalGrid
behoben (aosp/1931080, b/207510535)
Version 1.1.0
9. Februar 2022
androidx.compose.animation:animation:1.1.0
, androidx.compose.animation:animation-core:1.1.0
und androidx.compose.animation:animation-graphics:1.1.0
wurden veröffentlicht. Version 1.1.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.0.0
- Stabile Unterstützung für den Overscroll-Effekt von Android 12
- Verbesserungen bei der Größe von Berührungszielbereichen
- In Bezug auf Compose 1.0 wird der Layoutbereich von Material-Komponenten so erweitert, dass sie den Richtlinien für Bedienungshilfen von Material für die Größe des Berührungszielbereichs entsprechen. Das Berührungsziel der Schaltfläche wird beispielsweise auf eine Mindestgröße von 48 x 48 dp erweitert, auch wenn Sie die Größe der Schaltfläche entsprechend verringern. Dadurch wird das Material Design auf das gleiche Verhalten wie die Material Design-Komponenten abgestimmt, was ein einheitliches Verhalten ermöglicht, wenn du „View“ und „Compose“ mischst. Durch diese Änderung wird außerdem sichergestellt, dass beim Erstellen der Benutzeroberfläche mit „Material erstellen“-Komponenten die Mindestanforderungen für die Barrierefreiheit auf Berührungszielbereichen erfüllt sind.
- Stabile Unterstützung für Navigation Rail
- Umstellung einer Reihe zuvor experimenteller APIs auf stabile Version
- Support für neuere Versionen von Kotlin
Version 1.1.0-rc03
26. Januar 2022
androidx.compose.animation:animation:1.1.0-rc03
, androidx.compose.animation:animation-core:1.1.0-rc03
und androidx.compose.animation:animation-graphics:1.1.0-rc03
wurden veröffentlicht. Version 1.1.0-rc03 enthält diese Commits.
Fehlerkorrekturen
- Aktualisiert, um Compose Material 1.1.0-rc03 zu unterstützen
Version 1.1.0-rc01
15. Dezember 2021
androidx.compose.animation:animation:1.1.0-rc01
und androidx.compose.animation:animation-core:1.1.0-rc01
wurden veröffentlicht. Version 1.1.0-rc01 enthält diese Commits.
API-Änderungen
- Verwenden Sie
AnimatedImageVector.animatedVectorResource
anstelle vonanimatedVectorResource
, um eine<animated-vector>
-Ressourcendatei zu laden.- Verwende
rememberAnimatedVectorResource
anstelle vonAnimatedImageVector#painterFor
, um einAnimatedImageVector
zu rendern. (I9c300)
- Verwende
Version 1.1.0-beta04
1. Dezember 2021
androidx.compose.animation:animation:1.1.0-beta04
, androidx.compose.animation:animation-core:1.1.0-beta04
und androidx.compose.animation:animation-graphics:1.1.0-beta04
wurden veröffentlicht. Version 1.1.0-beta04 enthält diese Commits.
Neue Funktionen
- Aktualisiert, um mit Kotlin-
1.6.0
kompatibel zu sein
Version 1.1.0-beta03
17. November 2021
androidx.compose.animation:animation:1.1.0-beta03
, androidx.compose.animation:animation-core:1.1.0-beta03
und androidx.compose.animation:animation-graphics:1.1.0-beta03
wurden veröffentlicht. Version 1.1.0-beta03 enthält diese Commits.
API-Änderungen
- Neuer Modifikator "Modifier.onPlaced" hinzugefügt, der Folgendes zulässt: zu beobachten. Weitere Änderungen an Der Versatz des untergeordneten Modifikators kann daher basierend auf die beobachtete Placement-Änderung. (I558fd)
Neue Unterstützung für „contentKey“ in Crossfade. ContentKey wird für die Gleichheitsprüfung durch das Animationssystem verwendet. Daher ist eine benutzerdefinierte Unterschiede zwischen Zuständen möglich, für verschiedene Stadien den passenden contentKey.
ContentKey wird auch als Schlüssel zum Speichern und Speichern Inhalte wiederherstellen. (I2e055, b/197907070)
Version 1.1.0-beta02
3. November 2021
androidx.compose.animation:animation:1.1.0-beta02
, androidx.compose.animation:animation-core:1.1.0-beta02
und androidx.compose.animation:animation-graphics:1.1.0-beta02
wurden veröffentlicht. Version 1.1.0-beta02 enthält diese Commits.
Fehlerkorrekturen
- Neue Animations-APIs zur Unterstützung von Tools Insbesondere Tools zum Prüfen der Animationen und ihre Konfigurationen in einem Übergänge. (I4116e)
Version 1.1.0-beta01
27. Oktober 2021
androidx.compose.animation:animation:1.1.0-beta01
, androidx.compose.animation:animation-core:1.1.0-beta01
und androidx.compose.animation:animation-graphics:1.1.0-beta01
wurden veröffentlicht. Version 1.1.0-beta01 enthält diese Commits.
API-Änderungen
- Neue Animations-APIs zur Unterstützung von Tools Insbesondere Tools zum Prüfen der Animationen und ihre Konfigurationen in einem Übergänge. (I4116e)
Version 1.1.0-alpha06
13. Oktober 2021
androidx.compose.animation:animation:1.1.0-alpha06
, androidx.compose.animation:animation-core:1.1.0-alpha06
und androidx.compose.animation:animation-graphics:1.1.0-alpha06
wurden veröffentlicht. Version 1.1.0-alpha06 enthält diese Commits.
Version 1.1.0-alpha05
29. September 2021
androidx.compose.animation:animation:1.1.0-alpha05
, androidx.compose.animation:animation-core:1.1.0-alpha05
und androidx.compose.animation:animation-graphics:1.1.0-alpha05
wurden veröffentlicht. Version 1.1.0-alpha05 enthält diese Commits.
API-Änderungen
EnterTransition
,ExitTransition
und einige derAnimatedVisibility
APIs sind jetzt stabil.MutableTransitionState.isIdle
befindet sich ebenfalls nicht mehr in der Testphase. (I5072d)Nicht abwärtskompatible Änderung: Lambdas in Enter-/ExitTransition-Factoryen an die letzte Position in der Parameterliste verschoben. (I5072d)
Version 1.1.0-alpha04
15. September 2021
androidx.compose.animation:animation:1.1.0-alpha04
, androidx.compose.animation:animation-core:1.1.0-alpha04
und androidx.compose.animation:animation-graphics:1.1.0-alpha04
wurden veröffentlicht. Version 1.1.0-alpha04 enthält diese Commits.
Version 1.1.0-alpha03
1. September 2021
androidx.compose.animation:animation:1.1.0-alpha03
, androidx.compose.animation:animation-core:1.1.0-alpha03
und androidx.compose.animation:animation-graphics:1.1.0-alpha03
wurden veröffentlicht. Version 1.1.0-alpha03 enthält diese Commits.
Neue Funktionen
- Die Funktion „Compose“ (
1.1.0-alpha03
) wurde so aktualisiert, dass sie von „1.5.30
“ in Kotlin abhängig ist. (I74545)
Version 1.1.0-alpha02
18. August 2021
androidx.compose.animation:animation:1.1.0-alpha02
, androidx.compose.animation:animation-core:1.1.0-alpha02
und androidx.compose.animation:animation-graphics:1.1.0-alpha02
wurden veröffentlicht. Version 1.1.0-alpha02 enthält diese Commits.
API-Änderungen
- StartOffset wird jetzt in wiederholbaren und unendlich Wiederholbar, um die Startzeit zu verzögern oder die Animation vorspulen, bevor sie beginnt. Dieser Startversatz wird nicht wiederholt (Ic679f, b/195079908).
- Neuer Übergang zwischen Ein- und Ausstieg für die Skalierung. Er kann in Kombination verwendet werden. mit anderen Arten von Enter/ExitTransitions. (I372da, b/191325593)
Version 1.1.0-alpha01
4. August 2021
androidx.compose.animation:animation:1.1.0-alpha01
, androidx.compose.animation:animation-core:1.1.0-alpha01
und androidx.compose.animation:animation-graphics:1.1.0-alpha01
wurden veröffentlicht. Version 1.1.0-alpha01 enthält diese Commits.
API-Änderungen
AnimatedImageVector
und die zugehörigen APIs sind jetzt in der neuen Modulandroidx.compose.animation:animation-graphics
. (I60873)
Fehlerkorrekturen
InfiniteAnimationPolicy
wurde nach :compose:ui (I5eb09, b/160602714) verschoben
Version 1.0
Version 1.0.5
3. November 2021
androidx.compose.animation:animation:1.0.5
und androidx.compose.animation:animation-core:1.0.5
wurden veröffentlicht. Version 1.0.5 enthält diese Commits.
Fehlerkorrekturen
- Ein Absturz-Tracking von RelatedStateOf-Instanzen wurde behoben. (aosp/1792247)
Version 1.0.4
13. Oktober 2021
androidx.compose.animation:animation:1.0.4
und androidx.compose.animation:animation-core:1.0.4
wurden veröffentlicht. Version 1.0.4 enthält diese Commits.
Aktualisierung der Abhängigkeiten
- Aktualisiert und abhängig von Kotlin
1.5.31
Version 1.0.3
29. September 2021
androidx.compose.animation:animation:1.0.3
und androidx.compose.animation:animation-core:1.0.3
wurden veröffentlicht. Version 1.0.3 enthält diese Commits.
Aktualisierung der Abhängigkeiten
- Aktualisiert und abhängig von Kotlin
1.5.30
Version 1.0.2
1. September 2021
androidx.compose.animation:animation:1.0.2
und androidx.compose.animation:animation-core:1.0.2
wurden veröffentlicht. Version 1.0.2 enthält diese Commits.
Aktualisiert, um die Compose-Version 1.0.2
zu unterstützen. „Compose 1.0.2
“ ist weiterhin mit Kotlin 1.5.21
kompatibel.
Version 1.0.1
4. August 2021
androidx.compose.animation:animation:1.0.1
und androidx.compose.animation:animation-core:1.0.1
wurden veröffentlicht. Version 1.0.1 enthält diese Commits.
Aktualisierung der Abhängigkeiten
- Aktualisiert und abhängig von Kotlin-
1.5.21
.
Version 1.0.0
28. Juli 2021
androidx.compose.animation:animation:1.0.0
und androidx.compose.animation:animation-core:1.0.0
wurden veröffentlicht. Version 1.0.0 enthält diese Commits.
Hauptfunktionen von Version 1.0.0
Dies ist die erste stabile Version von Compose. Weitere Informationen finden Sie im offiziellen Blog „Compose Release“.
Bekannte Probleme
Wenn Sie Android Studio Bumblebee Canary 4 oder AGP
7.1.0-alpha04
/7.1.0-alpha05
verwenden, kann es zu folgendem Absturz kommen:java.lang.AbstractMethodError: abstract method "void androidx.lifecycle.DefaultLifecycleObserver.onCreate(androidx.lifecycle.LifecycleOwner)"
Erhöhen Sie in der Datei
build.gradle
vorübergehend Ihre minSdkVersion auf 24 oder höher, um das Problem zu beheben. Dieses Problem wird in der nächsten Version von Android Studio Bumblebee und AGP7.1
behoben. (b/194289155)
Version 1.0.0-rc02
14. Juli 2021
androidx.compose.animation:animation:1.0.0-rc02
und androidx.compose.animation:animation-core:1.0.0-rc02
wurden veröffentlicht. Version 1.0.0-rc02 enthält diese Commits.
Version 1.0.0-rc01
1. Juli 2021
androidx.compose.animation:animation:1.0.0-rc01
und androidx.compose.animation:animation-core:1.0.0-rc01
wurden veröffentlicht. Version 1.0.0-rc01 enthält diese Commits.
Fehlerkorrekturen
InfiniteAnimationPolicy
wurde nachandroidx.compose.ui:ui
verschoben (I5eb09, b/160602714)
Version 1.0.0-beta09
16. Juni 2021
androidx.compose.animation:animation:1.0.0-beta09
und androidx.compose.animation:animation-core:1.0.0-beta09
wurden veröffentlicht. Version 1.0.0-beta09 enthält diese Commits.
API-Änderungen
- Neu zusammensetzbare
AnimatedContent
. Inhalte werden verwaltet mit anpassbaremContentTransform
als neuen Zielinhalt ändern und der erste Inhalt verlässt. Andere Eingabekombination und Exit-Übergänge können verwendet werden, um ein benutzerdefiniertes fühlen. Im Rahmen der InhaltstransformationAnimatedContent
wird die Größe automatisch an den eingehenden Content angepasst. (I2c3df) ManualFrameClock
wurde entfernt. Wenn Sie Animationen steuern müssen, Verwende stattdessencomposeTestRule.mainClock
. (I3c3e8, b/189951065)
Regeln für Profil hinzugefügt
In diesem Release werden den folgenden Erstellungsmodulen (I14ed6) Profilregeln hinzugefügt:
- androidx.compose.animation
- androidx.compose.animation-core
- androidx.compose.foundation
- androidx.compose.foundation-layout
- androidx.compose.material
- androidx.compose.material-ripple
- androidx.compose.runtime
- androidx.compose.ui
- androidx.compose.ui.geometrie
- androidx.compose.ui.graphics
- androidx.compose.ui.text
- androidx.compose.ui.text
- androidx.compose.ui.unit.
- androidx.compose.ui.util-
Was sind Profilregeln?
Profilregeln für eine Bibliothek werden in der Textdatei
baseline-prof.txt
imsrc/main
oder einem entsprechenden Verzeichnis angegeben. In der Datei ist eine Regel pro Zeile angegeben, wobei eine Regel in diesem Fall ein Muster für den Abgleich mit Methoden oder Klassen in der Bibliothek ist. Die Syntax für diese Regeln ist eine Obermenge des visuell lesbaren ART-Profilformats, das bei Verwendung vonadb shell profman --dump-classes-and-methods ...
verwendet wird. Für die Ausrichtung auf Methoden oder Klassen gibt es zwei Arten dieser Regeln.Eine Methodenregel hat das folgende Muster:
<FLAGS><CLASS_DESCRIPTOR>-><METHOD_SIGNATURE>
Und eine Klassenregel hat das folgende Muster:
<CLASS_DESCRIPTOR>
Hier steht
<FLAGS>
für mindestens eines der ZeichenH
,S
undP
, um anzugeben, ob diese Methode als „Hot“, „Startup“ oder „Post Startup“ gekennzeichnet werden soll.<CLASS_DESCRIPTOR>
ist der Deskriptor für die Klasse, zu der die Zielmethode gehört. Die Klasseandroidx.compose.runtime.SlotTable
hätte beispielsweise den DeskriptorLandroidx/compose/runtime/SlotTable;
.<METHOD_SIGNATURE>
ist die Signatur der Methode und enthält den Namen sowie die Parametertypen und Rückgabetypen der Methode. Die Methodefun isPlaced(): Boolean
fürLayoutNode
hat beispielsweise die SignaturisPlaced()Z
.Diese Muster können Platzhalter (
**
,*
und?
) enthalten, damit eine einzelne Regel mehrere Methoden oder Klassen umfasst.
Wozu dienen die Regeln?
Eine Methode mit dem Flag
H
gibt an, dass diese Methode "heiß" ist. und sollten im Voraus kompiliert werden.Eine Methode mit dem Flag
S
gibt an, dass es sich um eine Methode handelt, die beim Start aufgerufen und im Voraus kompiliert werden sollte, um die Kosten für die Kompilierung und die Interpretation der Methode beim Start zu vermeiden.Eine Methode mit dem Flag
P
gibt an, dass es sich um eine Methode handelt, die nach dem Start aufgerufen wird.Eine in dieser Datei vorhandene Klasse gibt an, dass sie beim Start verwendet wird und im Heap zugewiesen werden sollte, um Kosten für das Laden der Klasse zu vermeiden.
So funktioniert's
- Bibliotheken können diese Regeln definieren, die in AAR-Artefakte gepackt werden. Wenn dann eine Anwendung erstellt wird, die diese Artefakte enthält, werden diese Regeln zusammengeführt und die zusammengeführten Regeln zum Erstellen eines kompakten binären ART-Profils verwendet, das speziell für die Anwendung gilt. ART kann dieses Profil dann nutzen, wenn die App auf Geräten installiert wird, um im Voraus eine bestimmte Teilmenge der App zu kompilieren und so die Leistung der App zu verbessern, insbesondere bei der ersten Ausführung. Dies hat keine Auswirkungen auf Debug-fähige Anwendungen.
Version 1.0.0-beta08
2. Juni 2021
androidx.compose.animation:animation:1.0.0-beta08
und androidx.compose.animation:animation-core:1.0.0-beta08
wurden veröffentlicht. Version 1.0.0-beta08 enthält diese Commits.
Fehlerkorrekturen
- Die Positionsänderung wird jetzt von
detectDragGesures
,detectVerticalGestures
unddetectHorizontalGestures
automatisch übernommen, sodass man change.consumePositionChange in den onDrag-Callbacks nicht aufrufen muss (I42fc4, b/185096350, b/187320697). Modifier.onGloballyPositioned()
wurde geändert, um die Koordinaten dieses Modifikators in der Modifikatorkette anzugeben, und nicht die Layoutkoordinaten, nachdem alle Modifikatoren angewendet wurden. Das bedeutet, dass sich jetzt die Reihenfolge der Modifikatoren darauf auswirkt, welche Koordinaten im Bericht angezeigt werden. (Ieb67d, b/177926591)
Version 1.0.0-beta07
18. Mai 2021
androidx.compose.animation:animation:1.0.0-beta07
und androidx.compose.animation:animation-core:1.0.0-beta07
wurden veröffentlicht. Version 1.0.0-beta07 enthält diese Commits.
API-Änderungen
- Neue
AnimatedVisibility
API, die die Angabe der Sichtbarkeit inMutableTransitionState
. So können die Animationsstatus auch außerhalb vonAnimatedVisibility
übercurrentState
undisIdle
beobachtet.- Unterstützung bei der Umstellung von Kindern auf Kinder
- Unterstützung benutzerdefinierter Übergangsanimationen zum Beenden/Aufrufen in animateVisibility mit AnimationScope.transition
- Neuer animateEnterExit-Modifikator steht für alle untergeordneten Elemente von zur Verfügung AnimierteSichtbarkeit
- Die animateVisibility APIs, die einen
initiallyVisible
verwenden, wurden eingestellt. Parameter (I702f3)
Version 1.0.0-beta06
5. Mai 2021
androidx.compose.animation:animation:1.0.0-beta06
und androidx.compose.animation:animation-core:1.0.0-beta06
wurden veröffentlicht. Version 1.0.0-beta06 enthält diese Commits.
Version 1.0.0-beta05
21. April 2021
androidx.compose.animation:animation:1.0.0-beta05
und androidx.compose.animation:animation-core:1.0.0-beta05
wurden veröffentlicht. Version 1.0.0-beta05 enthält diese Commits.
Fehlerkorrekturen
- Die AndroidManifest-Dateien aus ui-test-manifest und ui-tooling-data sind jetzt mit Android 12 kompatibel (I6f9de, b/184718994).
Version 1.0.0-beta04
7. April 2021
androidx.compose.animation:animation:1.0.0-beta04
und androidx.compose.animation:animation-core:1.0.0-beta04
wurden veröffentlicht. Version 1.0.0-beta04 enthält diese Commits.
API-Änderungen
- Öffentliche Instanzen von
RowScope
,ColumnScope
,BoxScope
undBoxWithConstraintsScope
wurden entfernt. (I4e83e, b/181869067)
Version 1.0.0-beta03
24. März 2021
androidx.compose.animation:animation:1.0.0-beta03
und androidx.compose.animation:animation-core:1.0.0-beta03
wurden veröffentlicht. Version 1.0.0-beta03 enthält diese Commits.
Version 1.0.0-beta02
10. März 2021
androidx.compose.animation:animation:1.0.0-beta02
und androidx.compose.animation:animation-core:1.0.0-beta02
wurden veröffentlicht. Version 1.0.0-beta02 enthält diese Commits.
Fehlerkorrekturen
- Einschränkungen für die öffentliche Nutzung experimenteller APIs erzwingen (I6aa29, b/174531520)
Version 1.0.0-beta01
24. Februar 2021
androidx.compose.animation:animation:1.0.0-beta01
und androidx.compose.animation:animation-core:1.0.0-beta01
wurden veröffentlicht. Version 1.0.0-beta01 enthält diese Commits.
Dies ist die erste Version der Betaversion von Compose 1.0.0.
API-Änderungen
- „
InteractionState
“ wurde durch „[Mutable]InteractionSource
“ ersetzt <ph type="x-smartling-placeholder">- </ph>
- Schnittstellen sind für das Ausgeben und Erfassen von Interaktionsereignissen verantwortlich.
- Anstatt
interactionState = remember { InteractionState() }
an Komponenten wieButton
undModifier.clickable()
zu übergeben, verwenden SieinteractionSource = remember { MutableInteractionSource() }
. - Anstelle von
Interaction.Pressed in interactionState
sollten Sie stattdessen die Erweiterungsfunktionen für InteractionSource verwenden, z. B. InteractionSource.collectIsPressedAsState(). - Für komplexe Anwendungsfälle können Sie InteractionSource.interactions verwenden, um den Interaktionsstrom zu beobachten. Weitere Informationen finden Sie in der InteractionSource-Dokumentation und den Beispielen.
- (I85965, b/152525426, b/171913923, b/171710801, b/174852378)
- SmoothScrollBy- und scrollBy-Methoden“ Pakete geändert in
androidx.compose.foundation.gestures.*
(I3f7c1, b/175294473) - Größenmodifikatoren wurden umbenannt. „modifier.width/height/size“ wurde in requiredWidth/requiredHeight/requiredSize umbenannt. „Modifier.preferredWidth/preferredHeight/preferredSize“ wurde in „Breite/Höhe/Größe“ umbenannt. (I5b414)
- „Ausrichtung“ wurde in das Foundation-Paket verschoben. VelocirtTracker wurde von ui.gesture zu ui.input.pointer verschoben. (Iff4a8, b/175294473)
- AnimationClockObservable und Unterklassen wurden entfernt. AnimierteFloat-Anzeige wurde entfernt. (Icde52, b/177457083)
- Modifier.draggable akzeptiert jetzt DraggableState anstelle einer einfachen Lambda-Funktion. Sie können einen Zustand über
rememberDraggableState { delta -> }
erstellen, um das gleiche Verhalten wie zuvor zu erhalten (Ica70f, b/175294473). - Animiert, AnimierteWert, AnimeWert entfernt wurden (If27bc, b/177457083)
- „AnimationEndReason.Interrupted“ wurde entfernt. "CancelException" wird ausgelöst, wenn die Animation unterbrochen wird. (I2cbbc, b/179695417)
- TargetAnimation API wurde entfernt. (If47d1, b/177457083)
Version 1.0.0-alpha12
10. Februar 2021
androidx.compose.animation:animation:1.0.0-alpha12
und androidx.compose.animation:animation-core:1.0.0-alpha12
wurden veröffentlicht. Version 1.0.0-alpha12 enthält diese Commits.
API-Änderungen
- Für
Modifier.pointerInput
müssen jetzt Schlüssel gespeichert werden, um anzugeben wann die Koroutine zur Erkennung der Zeigereingabe für eine neue Abhängigkeiten. (I849cd) - „Bounds“ wurde in „DpRect“ umbenannt (I4b32a).
- Parametername für AnimationSpec in AnimationSpec vereinheitlicht im gesamten Animationssystem. Auch Ein-/Ausgangswechsel einschränken um FiniteAnimationSpec zu akzeptieren. (Ie47c5, b/177457083)
- Animatable.snapTo und Animatable.stop sind jetzt Stoppfunktionen (If4288)
- Ähnlich wie zuvor entfernte die zusammensetzbare Funktion
state { 0 }
und jetzt die Verwendung wieremember { mutableStateOf(0) }
, entfernen wir die zusammensetzbare FunktionsavedInstanceState { 0 }
. Sie sollten stattdessenrememberSaveable { mutableStateOf(0) }
verwenden. Die Speicherung und Wiederherstellung erfolgen automatisch, wenn der im MutableState verwendete Typ im Bundle gespeichert werden kann. Wenn Sie jetzt ein benutzerdefiniertes Saver-Objekt übergeben haben, müssen Sie eine neue Überlastung von „merkSaveable“ mit dem ParameterstateSaver
verwenden. Die Nutzung sieht so aus:val holder = rememberSaveable(stateSaver = HolderSaver) { mutableStateOf(Holder(0)) }
(Ib4c26, b/177338004) - Die Methodensignatur von Crossfade wurde so aktualisiert, dass sie einheitlicher ist. mit dem Rest des Animationssystems. (Ib05ed, b/177457083)
- memorySavedInstanceState() wurde in „memorySaveable()“ umbenannt und in das Paket „androidx.compose.runtime.saveable“ verschoben. (I1366e, b/177338004)
- RestorableStateHolder wurde in SaveableStateHolder umbenannt und in das Paket „androidx.compose.runtime.saveable“ verschoben. Die innere Methode RestorableStateProvider wurde in SaveableStateProvider umbenannt. Der generische Typ wurde entfernt, sodass Sie „Any“ als Schlüssel übergeben können. Eine experimentelle Anmerkung ist nicht mehr erforderlich. (I0902e, b/174598702)
- Die Modifier.animateContentSize API wurde zur Vereinheitlichung aktualisiert. mit dem Rest des Animationssystems. (I0bf75, b/177457083)
- Die Funktion „ananibleValue/Float“ wird jetzt nicht mehr unterstützt. Bitte verwenden Sie Animierbar. (I71345, b/177457083)
- „touchGestenFilter“, „doubleTapUnlockGesteFilter“, „longPress potenziellenFilter“ und „PressIndicaitonTouchFilter“ werden nicht mehr unterstützt. Verwenden Sie stattdessen Modifier.clickable oder Modifier.pointerInput mit der Funktion detectTapGestens. (I6baf9, b/175294473)
- Der Kontext der Koroutine
InfiniteAnimationPolicy
wurde eingeführt. -Element, das in unendlichen Animationen angewendet wird. Standardmäßig nein Richtlinie installiert ist, außer beim Ausführen von Tests mitComposeTestRule
. (I50ec4, b/151940543) - Die Methoden "Destrukturieren" und "copy()" wurden entfernt aus in denen sie selten verwendet wurden. (I26702, b/178659281)
- Die Wiedergabedauer in der Animation ist jetzt auf Nanosekunden eingestellt (If776a)
- Das Artefakt „Compose:runtime-Dispatch“ wurde verworfen. MonotonicFrameClock befindet sich jetzt unter Du findest den AndroidUiDispatcher unter „Compose:ui“. (Ib5c36)
- Hinzugefügt:
Animation.isInfinite
undVectorizedAnimationSpec.isInfinite
, die signalisieren, dass eine Animation unendlich oder nicht. Dies kann bei Animationen genutzt werden, auf eine besondere Behandlung dieser Animationen angewendet werden. Zum Beispiel kann eine spezielle verbleibend“ angezeigt werden kann, oder während eines Tests abgebrochen, um ein unbestimmtes Warten auf Leerlaufzeiten zu verhindern. (Iebb05, b/151940543) - Als Typ der Animationszeit wird Long anstelle von Verfügbarkeit verwendet (Ie3aa7, b/177420019).
Version 1.0.0-alpha11
28. Januar 2021
androidx.compose.animation:animation:1.0.0-alpha11
und androidx.compose.animation:animation-core:1.0.0-alpha11
wurden veröffentlicht. Version 1.0.0-alpha11 enthält diese Commits.
API-Änderungen
- Die auf „TransitionDefinition“ basierende Umstellung wurde eingestellt (I0ac57)
- Für den Übergang wird ein Labelfeld hinzugefügt und Kinderanimationen, die in Tools angezeigt werden können (I619fb)
- "animateAsState" ist jetzt "animateFooAsState", wobei Foo für den Wert Typ der animierten Variablen. z.B. Gleitkommazahl, Dp, Offset usw. (Ie7e25)
- Die neue InfiniteTransition-Version kann beliebig viele Kinderanimationen. (I1da81)
- Ändert zustandsorientierte Material-Parameteroberflächen in @Composable-Funktionen, die
State<T>
zurückgeben. Fügt Animatable.asState() hinzu, um das Konvertieren eines Animatable-Elements in einen Status zu vereinfachen. Außerdem wird animateElevation zu einer Sperren-Erweiterung in Animatable geändert. (If613c)
Fehlerkorrekturen
- onCommit, onDispose und onActive wurden zugunsten der SideEffect und DisposableEffect APIs eingestellt (If760e)
- Anfänglicher Status in updateTransition wird jetzt unterstützt (Ifd51d)
- Der Parameter für die Inhaltsbeschreibung wurde dem Bild und dem Symbol hinzugefügt. Sie wird verwendet, um die Bedienungshilfen zu beschreiben (I2ac4c).
- invalid und summaryReference() wurden zugunsten von currentRecomposeScope bzw. memoryCompositionReference verworfen. (I583a8)
- „Dauer“ und „Verfügbarkeit“ werden durch „Lange Millisekunden“ ersetzt. Mit diesem Schritt wird die Abhängigkeit der Zeigereingabe von diesen Klassen. (Ia33b2, b/175142755, b/177420019)
- Anklickbar, ein- und auswählbar können jetzt außerhalb der Komposition erstellt werden (I0a130, b/172938345, b/175294473).
- Easing wurde in eine funktionale Oberfläche geändert (Ib14e5).
- Neue
items(count: Int)
-Factory-Methode für den Bereich von LazyColumn/LazyRow/LazyVerticalGrid.items(items: List)
unditemsIndexed(items: List)
sind jetzt Erweiterungsfunktionen, die bei Verwendung manuell importiert werden müssen. Neue Erweiterungsüberladungen für Arrays: „items:items: Array“ und itemsIndexed(Array) (I803fc, b/175562574) - TestCoroutineDispatcher beim Testen nutzen (I532b6)
- PointerInputData entfernt und PointerInputChange geändert haben um alle Felder von PointerInputData zu erhalten. PointerInputEvent erstellt und PointerInputEventData intern verwendet werden, da sie in einer beliebigen öffentlichen API. (Ifff97, b/175142755)
Version 1.0.0-alpha10
13. Januar 2021
androidx.compose.animation:animation:1.0.0-alpha10
und androidx.compose.animation:animation-core:1.0.0-alpha10
wurden veröffentlicht. Version 1.0.0-alpha10 enthält diese Commits.
API-Änderungen
- Geänderte Geschwindigkeit mit Komponenten und mathematischen Geschäftsabläufe. (Ib0447)
@ExperimentalTesting
wurde in@ExperimentalTestApi
umbenannt in entspricht ähnlichen Anmerkungen der experimentellen API (Ia4502, b/171464963).- "Position" wurde in "DpOffset" umbenannt und getDistance() entfernt (Ib2dfd).
- Öffentliche Any.identityHashCode() API (I025d7) entfernt
Fehlerkorrekturen
- Neue koroutinebasierte API
Animatable
, die die gegenseitige Exklusivität sicherstellt zwischen seinen Animationen. Neue DecayAnimationSpec zur Unterstützung mehrdimensionaler Abklinganimationen (I820f2, b/168014930) animate()
wird jetzt durchanimateAsState()
ersetzt. wodurchState<T>
anstelle vonT
zurückgegeben wird. Dies ermöglicht eine bessere da der Umfang der Entwertung eingegrenzt werden kann, bis der Wert "State" gelesen wird. (Ib179e)
Version 1.0.0-alpha09
16. Dezember 2020
androidx.compose.animation:animation:1.0.0-alpha09
und androidx.compose.animation:animation-core:1.0.0-alpha09
wurden veröffentlicht. Version 1.0.0-alpha09 enthält diese Commits.
API-Änderungen
- Dp.VectorConverter, Position.VectorConverter usw. verschoben auf Animationskern aus. Die alte Version von VectorConveters (If0c4b) wurde eingestellt.
- Einführung eines komplett neuen Satzes von Transition APIs mit verbesserten Nutzerfreundlichkeit, Unterstützung für dynamisch hinzugefügte Animationen und berechneten Animationszielen. Diese APIs sind als experimentell gekennzeichnet für einfache Unterscheidung von der TransitionDefinition-basierten API. (Ia7fe3)
Fehlerkorrekturen
- Lambdas in Offset-Modifikatoren geben jetzt IntOffset statt Float zurück. (Ic9ee5, b/174137212, b/174146755)
- LazyColumnFor, LazyRowFor, LazyColumnForIndexed und LazyRowForIndexed werden eingestellt. Stattdessen LazyColumn und LazyRow verwenden (I5b48c)
- Umbenennung von Eingabe-APIs zum Aussetzen von Zeiger. HandlePointerInputScope to AwaitPointerEventScope and handlePointerInput() zu "awaitPointerEventScope()". (Idf0a1, b/175142755)
- Neue Funktion infiniteRepeatable zum Erstellen einer InfiniteRepeatableSpec (I668e5)
- Anmerkung ExperimentalPointerInput entfernt (Ia7a24)
Version 1.0.0-alpha08
2. Dezember 2020
androidx.compose.animation:animation:1.0.0-alpha08
und androidx.compose.animation:animation-core:1.0.0-alpha08
wurden veröffentlicht. Version 1.0.0-alpha08 enthält diese Commits.
API-Änderungen
- Es wurde eine Lint-Prüfung für die Benennung und Position von zusammensetzbaren Lambda-Parametern hinzugefügt, um die Konsistenz mit den Richtlinien für das Schreiben zu prüfen.
Außerdem wurden einige APIs gemäß der Lint-Prüfung und der Anleitung mit
children
als Namen für das nachgestellte Lambda zucontent
migriert. (Iec48e) - Zuvor eingestellte APIs wurden entfernt:
<ph type="x-smartling-placeholder">
- </ph>
Modifier.onPositioned
wurde entfernt. VerwendeModifier.onGloballyPositioned
.Modifier.onDraw
wurde entfernt. VerwendeModifier.onDrawBehind
.Modifier.plus
wurde entfernt. VerwendeModifier.then
.Color.Unset
wurde entfernt. VerwendeColor.Unspecified
.PxBounds
Kurs wurde entfernt. Verwenden Sie stattdessenRect
.- (Ie9d02, b/172562222)
- Vorübergehend hinzugefügte Option für TestAnimationClock gesteuert von MonotonicFrameClock (I1403b, b/173402197)
Fehlerkorrekturen
- „Modifier.drawLayer“ wurde in „Modifier.graphicsLayer“ umbenannt. Ähnliche Klassen zu GraphicsLayer wurden ebenfalls entsprechend aktualisiert. Feedback vom API Council (I0bd29, b/173834241)
- Modifier.scale/rotate hinzugefügt
APIs als praktische Funktionen fürdrawLayer.
- Modifier.drawOpacity wurde in Modifier.alpha umbenannt.
- "Modifier.drawShadow" wurde in "Modifier.shadow" umbenannt (I264ca, b/173208140).
- Dank der Verfügbarkeit von PointerInputData Positionsfelder können nicht null sein. (ID468a)
- Die „offsetPx“-Modifikatoren wurden in „offset“ umbenannt. Sie verwenden jetzt Lambda-Parameter anstelle von Status. (IC3021, b/173594846)
- Neue APIs zum Ausführen von Animationen in Koroutinen (Ied662)
- Die eingestellten Ambients mit dem Suffix
Ambient
wurden gemäß den anderen Richtlinien für Ambients und Compose API durch neue Properties mit dem Präfix „Inaktiv“ ersetzt. (I33440) - Die Zeitsteuerung in Tests (TestAnimationClock und ihre Nutzung) ist jetzt experimentell (I6ef86, b/171378521)
- Entfernen Sie das alte UI-Test-Modul und die zugehörigen Stubs (I3a7cb).
- Funktion „
RestorableStateHolder.withRestorableState
“ wurde in „RestorableStateProvider
“ umbenannt (I66640) - Die Benutzeroberfläche für die Ausrichtung wurde aktualisiert und funktionsfähig gemacht. (I46a07, b/172311734)
Version 1.0.0-alpha07
11. November 2020
androidx.compose.animation:animation:1.0.0-alpha07
und androidx.compose.animation:animation-core:1.0.0-alpha07
wurden veröffentlicht. Version 1.0.0-alpha07 enthält diese Commits.
Fehlerkorrekturen
- Die Grundlagen AmbientTextStyle, ProvideTextStyle und AmbientContentColor wurden eingestellt. Verwenden Sie stattdessen die neuen Versionen, die in der Material-Bibliothek verfügbar sind. Für nicht-Material-Anwendungen sollten Sie stattdessen Ihr eigenes Designsystem erstellen, das spezifische Design-Ambiente enthält, die in Ihren eigenen Komponenten verwendet werden können. (I74acc, b/172067770)
- Foundation.Text wurde eingestellt und durch material.Text ersetzt. Eine einfache, uneindeutige Text-API, die keine Werte aus einem Design verwendet, finden Sie unter androidx.compose.foundation.BasicText. (If64cb)
- MeasureResult wurde aus MeasureScope verschoben. (Ibf96d, b/171184002)
- Mehrere Layoutsymbole wurden von androidx.compose.ui nach androidx.compose.layout.ui verschoben. (I0fa98, b/170475424)
Version 1.0.0-alpha06
28. Oktober 2020
androidx.compose.animation:animation:1.0.0-alpha06
und androidx.compose.animation:animation-core:1.0.0-alpha06
wurden veröffentlicht. Version 1.0.0-alpha06 enthält diese Commits.
API-Änderungen
- Übergänge in ComposeTestRule aktivieren Option entfernen, um aktivieren Sie den blinkenden Cursor in ComposeTestRule. (If0de3)
Version 1.0.0-alpha05
14. Oktober 2020
androidx.compose.animation:animation:1.0.0-alpha05
und androidx.compose.animation:animation-core:1.0.0-alpha05
wurden veröffentlicht. Version 1.0.0-alpha05 enthält diese Commits.
API-Änderungen
- Neue Animationsoberfläche und Unterklassen: Diese Klassen die Start- und Endbedingungen für Animationen. Abfragen von Wert und Geschwindigkeit nur über die Spieldauer ermöglichen (Ie95bd, b/163329867)
Fehlerkorrekturen
- OnPositionedModifier wurde in OnGloballyPositionedModifier umbenannt und onPositioned() wird in onGloballyPositioned() umbenannt. (I587e8, b/169083903)
Die APIs „contentColor()“ und „currentTextStyle()“ werden verworfen und durch AmbientContentColor- und AmbientTextStyle-Ambients ersetzt. Du kannst auf den aktuellen Wert zugreifen, indem du
.current
wie bei jeder anderen Umgebungs-Property verwendest. Diese Änderung dient der Einheitlichkeit und um zu vermeiden, dass dasselbe Ziel auf mehreren Wegen erreicht werden kann. Außerdem werden einige Ambient-Eigenschaften umbenannt, um ihren Zweck wie folgt zu beschreiben:- ContentColorAmbient -> AmbientContentColor (Farbinhalt)
- TextStyleAmbient -> Ambient-Textstil
- IndicationAmbient -> Umgebungsanzeige
- Betonung -> AmbientEmphasisLevel
- RippleThemeAmbient -> AmbientRippleTheme (I37b6d)
Version 1.0.0-alpha04
1. Oktober 2020
androidx.compose.animation:animation:1.0.0-alpha04
und androidx.compose.animation:animation-core:1.0.0-alpha04
wurden veröffentlicht. Version 1.0.0-alpha04 enthält diese Commits.
API-Änderungen
- Annotierte-Datei „rootAnimationClockFactory“, „transitsEnabled“, blinkingCursorEnabled und textInputServiceFactory mit @VisibleForTesting, machen Sie sie in eine interne API und verbergen Sie ihr kdoc (I554eb, b/168308412).
Fehlerkorrekturen
- Aktualisierung vieler Grafik-APIs
<ph type="x-smartling-placeholder">
- </ph>
- Skalierung und Drehung wurden aktualisiert Transformations-APIs verwenden, um eine einzelne Offset-Parameter zur Darstellung des Drehpunkts -Koordinate anstelle einer separaten Gleitkommazahl für die x/y-Koordinaten in DrawScope und DrawTransform
- Rect.expandToInclude und Rect.join entfernt Methoden
- Radius-Dokumentation wurde aktualisiert, um „oval“ anzuzeigen neben dem Crosstrainer
- Es wurde eine Dokumentation hinzugefügt, die angibt, öffentlicher Konstruktor für den Inline-Radius sollte nicht direkt aufgerufen werden, Radiusobjekte sollten über ihre Funktionskonstruktoren
- Entfernung der RoundRect-APIs für die Abfrage von topRight, „bottomRight“, „bottomCenter“ usw.
- Rect.shift wurde zugunsten von Rect.translate eingestellt.
- RoundRect.grow und Rect.shrink APIs entfernt
- Umbenennung von RoundRect.outerRect in Rect.boundingRect
- RoundRect.middleRect/tallMiddleRect/wideMiddleRect entfernt und Rect.isStadium
- „RoundRect.longestSide“ wurde in „RoundRect.maxDimension“ umbenannt
- „RoundRect.shortestSide“ wurde in „RoundRect.minDimension“ umbenannt
- RoundRect.center ist jetzt eine Eigenschaft anstelle einer Funktion.
- Der RoundRect-Konstruktor wurde so aktualisiert, dass Radius-Eigenschaften genutzt werden. statt einzelner Parameter für x-/y-Radiuswerte
- Größen-APIs, für die davon ausgegangen wird, dass es sich um ein Rectangle mit einer bestimmten Größe handelt, wurden entfernt. Ursprung bei 0,0
- Zerstörungs-API zu Radius hinzugefügt
- Migrierte verschiedene RoundRect-Erweiterungsfunktionen Properties stattdessen
- (I8f5c7, b/168762961)
- Foundation.Box wurde eingestellt. Verwende stattdessen „foundation.layout.Box“. (Ie5950, b/167680279)
- Stack wurde in Box umbenannt. Die bisherige Box wird zugunsten der neuen Box in „Compose.foundation.layout“ eingestellt. Das Verhalten des neuen Box besteht darin, untergeordnete Elemente übereinander zu stapeln, wenn sie mehrere untergeordnete Elemente hat. Dies unterscheidet sich vom vorherigen Box, das sich ähnlich wie eine Column verhielt. (I94893, b/167680279)
- Die Parameter „Box decoration“ wurden eingestellt. Wenn Sie Ihre Box mit Verzierungen/Padding versehen möchten, verwenden Sie stattdessen Modifikatoren (Modifier.background, Modifier.Border, Modifier.padding) (Ibae92, b/167680279).
- Statische Importe von Inhalten von Layoutbereichen (z.B. alignWithSiblings in RowScope) wurden verhindert. Verwenden Sie stattdessen die explizite Bereichsalternative:
with(RowScope) { Modifier.alignWithSiblings(FirstBaseline) }
. (I216be, b/166760797)
Version 1.0.0-alpha03
16. September 2020
androidx.compose.animation:animation:1.0.0-alpha03
und androidx.compose.animation:animation-core:1.0.0-alpha03
wurden veröffentlicht. Version 1.0.0-alpha03 enthält diese Commits.
Fehlerkorrekturen
- Die Verwendung der Schwerkraft wurde konsequent zur Ausrichtung oder Ausrichtung in Layout-APIs umbenannt. (I2421a, b/164077038)
Version 1.0.0-alpha02
2. September 2020
androidx.compose.animation:animation:1.0.0-alpha02
und androidx.compose.animation:animation-core:1.0.0-alpha02
wurden veröffentlicht. Version 1.0.0-alpha02 enthält diese Commits.
API-Änderungen
ManualFrameClock.hasAwaiters
wurde hinzugefügt, um zu sehen, ob etwas ist das Warten auf einen Frame von dieser Uhr;runWithManualClock
als Ersatz fürrunBlocking
, wenn Tests ausgeführt werden, die eine manualFrameClock erfordernTestUiDispatcher.Main
, mit dem Sie einfach auf den UI-Dispatcher zugreifen können in Ihren Tests.Beispiel:
@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") } }
Fehlerkorrekturen
onPreCommit wurde verworfen. onCommit verfügt jetzt über das Feld verhalten.
onCommit und onActive werden nun im selben Choreografen-Frame ausgeführt, die Commit-Änderungen an der Zusammensetzung des nächsten Frames der Choreografin. (I70403)
Version 1.0.0-alpha01
26. August 2020
androidx.compose.animation:animation:1.0.0-alpha01
und androidx.compose.animation:animation-core:1.0.0-alpha01
wurden veröffentlicht. Version 1.0.0-alpha01 enthält diese Commits.
Version 0.1.0-dev
Version 0.1.0-dev17
19. August 2020
androidx.compose.animation:animation:0.1.0-dev17
und androidx.compose.animation:animation-core:0.1.0-dev17
wurden veröffentlicht. Version 0.1.0-dev17 enthält diese Commits.
Neue Funktionen
API-Änderungen
- Der Offset ist jetzt eine Inline-Klasse (Iaec70).
- IntOffset ist jetzt eine Inline-Klasse (Iac0bf).
- IntSize ist jetzt eine Inline-Klasse (I2bf42).
Die zusammensetzbare Funktion „animatedVisibilty“ animiert die Darstellung und das Verschwinden der untergeordneten Inhalte.
EnterTransition und ExitTransition wurden eingeführt, Mit der zusammensetzbaren Funktion „animatedVisibilty“ lassen sich drei verschiedene Animation zum Erscheinungsbild und Verschwinden: Überblenden, um den Inhalt zu maximieren/verkleinern. Die verschiedenen Arten von Animationen können kombiniert werden, um ein individuelleres Erscheinungsbild zu erzielen. (Idda11)
Eingestellte PxBounds in Rekt. Alle Nutzungen wurden aktualisiert von PxBounds mit Rechteck und addiert ordnungsgemäße Einstellung/Ersetzen durch Vermerken, die bei der Migration. (I37038, b/162627058)
Fehlerkorrekturen
PlacementScope.placeAbsolute()
wurde inPlacementScope.place()
umbenannt und die vorherigePlacementScope.place()
wurde inPlacementScope.placeRelative()
umbenannt. Daher spiegelt die MethodePlacementScope.place()
die Position in Rechts-nach-links-Kontexten nicht mehr automatisch wider. Verwenden Sie stattdessenPlacementScope.placeRelative()
. (I873ac, b/162916675)- Die zusammensetzbare Funktion
state { ... }
wurde zugunsten von explizite Aufrufe anremember { mutableStateOf(...) }
zur Verdeutlichung. Dies reduziert die API-Oberfläche insgesamt und die Anzahl der Konzepte für den Status Verwaltung und entspricht dem Musterby mutableStateOf()
für die Klasse Property-Delegierung. (Ia5727)
Version 0.1.0-dev16
5. August 2020
androidx.compose.animation:animation:0.1.0-dev16
und androidx.compose.animation:animation-core:0.1.0-dev16
wurden veröffentlicht. Version 0.1.0-dev16 enthält diese Commits.
API-Änderungen
- Integrierte Vektorkonverter zur Umwandlung von integrierten
Einheiten sind jetzt über
Foo.VectorConverter
zugänglich. z.B.Dp.VectorConverter
,Color.VectorConverter
,Float.VectorConverter
usw. (I3e273) - Support-End-Listener in
Modifier.animateContentSize()
sodass der Listener nach Abschluss der Größenänderungsanimation werden zusammen mit der Start-/Endgröße der Animation benachrichtigt. (I277b2) - Neuer animateContentSize-Modifikator, mit dem die Änderung der Layoutgröße des untergeordneten Modifikators (Ieffdc)
MonotonicFrameAnimationClock
wurde hinzugefügt, mit der du ein MonotonicFrameClock alsAnimationClockObservable
, um die Lücke zu schließen zwischen den neuen, auf Koroutinen basierenden Uhren und APIs, die noch die alten auf Rückrufen basierende Uhren.Die
MonotonicFrameClock
-Entsprechung fürManualAnimationClock
ist jetztManualFrameClock
(I111c7, b/161247083)
Fehlerkorrekturen
- Die APIs für die Unterstützung von Rechts-nach-links wurden aktualisiert. LayoutDirectionAmbient wurde hinzugefügt, um die Layoutrichtung zu lesen und zu ändern. Modifier.rtl und Modifier.ltr wurden entfernt. (I080b3)
- Ausdrückliche Angabe des Typs T verlangen für „transitDefinition“. (I1aded)
- Das Paket „Foundation.shape.corner“ wurde mit dem Paket „foundation.share“ flach dargestellt (I46491, b/161887429).
- Modifier.plus wurde eingestellt. Verwenden Sie stattdessen "Modifier.then". „Dann“ ein stärkeres Signal für die Reihenfolge hat, während gleichzeitig die Eingabe von
Modifier.padding().background() + anotherModifier
unterbunden wird, wodurch die Kette unterbrochen wird und schwerer zu lesen ist (Iedd58, b/161529964). - "Modifier.drawBackground" wurde in "Modifier.background" umbenannt (I13677).
Version 0.1.0-dev15
22. Juli 2020
androidx.compose.animation:animation:0.1.0-dev15
und androidx.compose.animation:animation-core:0.1.0-dev15
wurden veröffentlicht. Version 0.1.0-dev15 enthält diese Commits.
Abhängigkeiten aktualisieren
- Wenn Sie die
0.1.0-dev15
-Version von Compose verwenden möchten, müssen Sie Ihre Abhängigkeiten aktualisieren gemäß den neuen Code-Snippets, die oben unter Abhängigkeiten angeben aufgeführt sind.
API-Änderungen
- Transition API wurde geändert und gibt jetzt Folgendes zurück: TransitionState anstelle von TransitionState übergeben für Kinder. Dadurch wird die API konsistenter mit animate() verwenden. (I24e38)
- Modifikatorparameter für Crossfade hinzugefügt (I87cfe, b/159706180)
- Verwenden Sie in den APIs der obersten Ebene AnimationSpec anstelle von AnimationBuilder
zur Verdeutlichung des Konzepts der Spezifikation für statische Animationen
<ph type="x-smartling-placeholder">
- </ph>
- Verbessern Sie das Übergangs-DSL, indem Sie die Lambda-Anforderung für AnimationSpecs wie Tween, Spring. Stattdessen nehmen sie -Konstruktorparameter.
- Verbessern Sie die Nutzerfreundlichkeit von AnimationSpec, statt sich auf Builder zu verlassen,
- Ändern Sie die Dauer und Verzögerung für KeyFrames und „Tween“ in „Int“. Dieses vermeidet unnötige Typumwandlungen und Methodenüberlastung (für Long und Int unterstützt). (Ica0b4)
- Verwendung von IntPx durch Int.- IntPxPosition ersetzt mit IntOffset. "IntPxSize" wurde durch "IntSize" ersetzt. (Ib7b44)
- Um die Conversion-Raten Anzahl der Klassen, die für Größeninformationen, standardisieren bei Verwendung der Klasse „Size“ von PxSize. Dies bietet die Vorteile einer Inline-Klasse an, um eine lange um 2 Gleitkommawerte zu packen, als Gleitkommazahlen dargestellt. (IC0191)
- Um die Conversion-Raten Anzahl der Klassen, die für wie Positionierungsinformationen, bei Verwendung der Offset-Klasse von PxPosition. Dies bietet die Vorteile einer Inline-Klasse an, um eine lange um 2 Gleitkommawerte zu verpacken, die x darstellen und Y-Offsets, dargestellt als Gleitkommazahlen. (I3ad98)
- Verwendung der Px-Klasse in verschiedenen Erstellen von Klassen als Teil des großen Refaktorierungsaufwand, nur auf Dp zurückzugreifen und primitive Typen für Pixelparameter (I086f4)
- animate() wurde hinzugefügt für Dp, Px, Größe, Position, Bounds, PxPosition, PxSize, PxBounds, IntPx, IntPxSize, IntPxPosition, IntPxBounds und AnimationVector (Ib7518)
- Bei Überblenden ist jetzt der optionale AnimationBuilder-Parameter zulässig, um die Animation zu konfigurieren (I6d6e0).
- Alle Farbverwendungen, für die Nullwerte zulässig sind, in der API ersetzt durch keine Nullwerte zulässig und "Color.Unset" anstelle von "null" verwenden (Iabaa7)
- ValueHolder-Klasse entfernt. Umstrukturiert die Klassen animateValue und animateFloat in
Macht das Feld für den Animationswert abstrakt, sodass Unterklassen die Wertaktualisierung beobachten können.
- Es wurden Modellklassen für animateValue, animateFloat usw. hinzugefügt.
- Es wurde ein neuer Satz einfacher @Composable-API zur Animation zwischen Werten hinzugefügt. (I79530)
- Nicht abwärtskompatible Änderungen an der Ambients API. Weitere Informationen finden Sie in der Protokoll- und
Ambient<T>
-Dokumentation (I4c7ee, b/143769776). - Neuer Wiederholungsmodus: Umkehren. Dieser Modus kehrt die vorherige Iteration, wenn sich die Animation in RepeatableSpec wiederholt oder VectorizedRepeatableSpec ein. (Ibe0f5)
- API-Ergänzungen zu manualAnimationClock:
hasObservers: Boolean
und KonstruktorparameterdispatchOnSubscribe: Boolean
(Iaa134) - Es wurden APIs zum Abrufen von Minimal-/Maximalgrenzen in animateFloat hinzugefügt (Icd9cc).
Fehlerkorrekturen
runOnIdleCompose
umbenannt inrunOnIdle
(I83607)- Mehrere Test-APIs wurden umbenannt, um die Intuitivität zu verbessern. Alle Die APIs „findXYZ“ wurden in „onNodeXYZ“ umbenannt. Alle doXYZ APIs wurden umbenannt in PerformXYZ. (I7f164)
- Einführung zustandsloser Animations-APIs auf niedriger Ebene Diese APIs (I63bf7)
- Die zusammensetzbare Funktion „Neu zusammensetzen“ ist keine nützliche Abstraktion mehr. Die Neuzusammensetzung sollte in der Regel als Ergebnis von MutableState-Zuweisungen erfolgen. Für alle anderen Bereiche wird empfohlen, die
invalidate
-Funktion zu verwenden, um eine Neuzusammensetzung des aktuellen Bereichs auszulösen. (Ifc992) - Verwendung der Px-Klasse in verschiedenen Erstellen von Klassen als Teil des großen Refaktorierungsaufwand, nur auf Dp zurückzugreifen und primitive Typen für Pixelparameter. Vollständige Px-Klasse gelöscht (I3ff33)
- Verwendung der Px-Klasse in verschiedenen Erstellen von Klassen als Teil des großen Refaktorierungsaufwand, nur auf Dp zurückzugreifen und primitive Typen für Pixelparameter (Id3434)
- Crossfade kann jetzt mit Null als Anfangswert verwendet werden (Iad6a4, b/155947711).
- Verwendung der Px-Klasse in verschiedenen Erstellen von Klassen als Teil des großen Refaktorierungsaufwand, nur auf Dp zurückzugreifen und primitive Typen für Pixelparameter (I19d02)
- Konsolidierte CanvasScope-Implementierungen Jetzt gibt es nur DrawScope und ContentDrawScope CanvasScope wurde in DrawScope umbenannt. DrawScope aktualisiert, um Dichte zu implementieren und LayoutDirection Die abgeleitete DrawScope-Klasse in ContentDrawScope wurde gelöscht Painter und PainterModifier wurden aktualisiert kein RTL-Attribut mehr da DrawScope dies bereits ohne sie manuell anzugeben (I1798e).
- Höhere Ebene aktualisiert APIs erstellen, die einen Canvas für CanvasScope. Dadurch wird Folgendes entfernt: die Notwendigkeit, dass die Verbraucher eigenen Paint-Objekten erstellen. Für Verbraucher, die benötigen weiterhin Zugriff auf einen Canvas, können sie die Erweiterung „drawCanvas“ verwenden, -Methode, die einen Callback des Problems liefert Zeichenbefehle mit der zugrunde liegenden Canvas (I80afd)
- Die Parameter verticalGravity und horizontalGravity wurden zu Zeile bzw. Spalte hinzugefügt. (I7dc5a)
- Modul ui-text wurde in ui-text-core umbenannt (I57dec).
- DrawModifier API verbessern:
<ph type="x-smartling-placeholder">
- </ph>
- Der Empfängerumfang für „draw() ContentDrawScope“ wurde erstellt.
- Alle Parameter fürdraw() wurden entfernt.
- DrawScope hat dieselbe Oberfläche wie der frühere CanvasScope.
- ContentDrawScope verfügt über die Methode „drawContent()“ (Ibaced, b/152919067).
runOnIdleCompose
undrunOnUiThread
sind jetzt globale Funktionen anstelle von Methoden in ComposeTestRule. (Icbe8f)- [Mutable]Operatoren für Bevollmächtigte von Statuseigenschaften wurden in Erweiterungen verschoben
zur Unterstützung von Optimierungen für Kotlin 1.4-Property-Delegationen. Aufrufer müssen Folgendes hinzufügen:
um
by state { ... }
oderby mutableStateOf(...)
weiterhin zu verwenden. (I5312c) - „ColoredRect“ wurde eingestellt. Verwende stattdessen
Box(Modifier.preferredSize(width, height).drawBackground(color))
. (I499fa, b/152753731) - Modifikator plus Operator durch Factory-Erweiterungsfunktionen ersetzt (I225e4)
- Veraltete zusammensetzbare Funktion aus dem Center. Er sollte entweder durch den Modifikator „LayoutSize.Fill + LayoutAlign.Center“ oder durch eine der zusammensetzbaren Funktionen „Box“ oder „Stack“ mit entsprechenden angewendeten Modifikatoren ersetzt werden (Idf5e0).
- LayoutFlexible wurde in LayoutWeight umbenannt. Zum Ausfüllen muss enger Parameter umbenannt werden. (If4738)
- Die zusammensetzbare Funktion Deckkraft wurde ersetzt mit dem DrawOpacity-Modifikator. (I5fb62)
- Tests mit AndroidComposeTestRule enthalten jetzt eine Animation am Stamm der Komposition, wodurch sie pausiert werden kann, fortgesetzt und manuell erweitert. (Id54c5)
- Unterstützung von rechts nach links im LayoutPadding-Modifikator (I9e8da)
- Density und DensityScope wurden in einer Schnittstelle zusammengeführt. Anstelle von „AmbientDensity()“ können Sie jetzt „DensityAmbient.current“ verwenden. Anstelle von mitDensity(density) nur mit(density) (I11cb1)
- Kopiermethoden für verschiedene
Inline-Klassentypen, einschließlich:
<ph type="x-smartling-placeholder">
- </ph>
- Offset
- Größe
- Radius
- Bewegung
- TransformOrigin
- Eingestellte Methode für das Companion-Objekt "Size.copy" Bevorzugung der Kopiermethode der Instanz (Ife290, b/159905651)
- androidx.compose.ViewComposer wurde nach androidx.ui.node.UiComposer verschoben
„androidx.compose.Emittable“ wurde entfernt. Er war redundant mit ComponentNode.
„androidx.compose.ViewAdapters“ wurde entfernt. Sie werden nicht mehr unterstützt.
Compose.composeInto wurde eingestellt. Verwende stattdessen
setContent
odersetViewContent
. „Compose.disposeComposition“ wurde eingestellt. Verwenden Sie stattdessen die Methodedispose
für dieComposition
, die vonsetContent
zurückgegeben wird. androidx.compose.Compose.subcomposeInto wurde zu androidx.ui.core.subcomposeInto verschoben ComponentNode#emitInsertAt wurde in ComponentNode#insertAt umbenannt. ComponentNode#emitRemoveAt wurde in ComponentNode#removeAt umbenannt. ComponentNode#emitMode wurde in ComponentNode#move (Idef00) umbenannt.