Animation erstellen

Animationen in den Jetpack Compose-Anwendungen erstellen, um die User Experience zu bereichern
Letzte Aktualisierung Stabile Version Releasekandidat Beta-Ausgabe Alpha-Release
26. Juni 2024 1.6.8 - 1.7.0-beta04 -

Gebäude

Compose ist eine Kombination aus sieben Maven-Gruppen-IDs innerhalb von androidx. Jede Gruppe umfasst eine bestimmte Teilmenge von Funktionen mit jeweils eigenen Versionshinweisen.

In dieser Tabelle werden die Gruppen und Links zu den einzelnen Versionshinweisen erläutert.

GruppeBeschreibung
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.foundationSchreiben Sie Jetpack Compose-Anwendungen mit gebrauchsfertigen Bausteinen und erweitern Sie die Grundlage für den Aufbau Ihrer eigenen Designsysteme.
compose.materialJetpack 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ügenJetpack 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.runtimeGrundlegende Bausteine des Programmiermodells und der Statusverwaltung von Compose sowie die zentrale Laufzeit für das Compose-Compiler-Plug-in.
compose.uiGrundlegende 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 Ihrem Projekt das Maven-Repository von Google hinzufügen. Weitere Informationen finden Sie im Maven-Repository von Google.

Fügen Sie der Datei build.gradle für Ihre Anwendung oder Ihr Modul die Abhängigkeiten für die Artefakte hinzu, die Sie benötigen:

Groovig

dependencies {
    implementation "androidx.compose.animation:animation:1.6.8"
}

android {
    buildFeatures {
        compose true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.5.14"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

Kotlin

dependencies {
    implementation("androidx.compose.animation:animation:1.6.8")
}

android {
    buildFeatures {
        compose = true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.5.14"
    }

    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 Verbesserungsvorschläge für diese Bibliothek haben. Bitte sieh dir die vorhandenen Probleme in dieser Bibliothek an, bevor du eine neue erstellst. Sie können einem vorhandenen Problem Ihre Stimme hinzufügen, indem Sie auf die Sternschaltfläche klicken.

Neues Problem erstellen

Weitere Informationen finden Sie in der Dokumentation zur Problemverfolgung.

Version 1.7

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 und RemeasureToBounds) für sharedBounds zur Auswahl zwischen Skalierung und Neumessung. Die vorherigen scaleIn/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 und scaleOutSharedContentToBounds zum Skalieren von Inhalten in sharedBounds (I731c1)

API-Änderungen

  • AnimatedVisibilityScope.transition ist jetzt eine stabile API. Modifier.animateEnterExit(..) ist ebenfalls stabil. (I6c1d1)
  • ApproachLayoutModifierNode und Modifier.approachLayout sind jetzt stabil. Das alte isMeasurementApproachComplete() bzw. isPlacementApproachComplete() wird durch die neuen isMeasurementApproachInProgress() und isPlacementApproachInProgress() ersetzt.
  • Eingestellter intermediateLayout-Modifikator wurde entfernt. (I3e91c)
  • Sie können nun einen periodicBias-Wert (Gleitkommazahl) an keyframesWithSpline ü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 und LazyRow hinzugefügt. Bisher war es möglich, den Modifier.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 namens Modifier.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 ersetzt snapTo() durch seekTo() und fügt einen snapTo()-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 in LazyList nicht richtig zurückgesetzt wurde. (I070512, b/322525716)
  • Das Problem IllegalStateException bei KeyframesSpec 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

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 und scaleOutToFitContainer wurden vorübergehend aus AnimatedContentTransitionScope 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 in ExitTransition.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 wie Offset, IntOffset und DpOffset 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 von KeyframesSpecConfig#using verworfen. Das Builder-Muster wird dadurch beibehalten. (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 primäre und sekundäre Varianten. Diese entsprechen der in Material3 definierten Farbe und dem Indikatorverhalten korrekt.
  • PrimaryScrollableTabRow und SecondaryScrollableTabRow 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

  • Neue Art von Übergang zwischen Ein- und Ausstieg, bei der der Inhalt basierend auf der Größe des Animationscontainers während der Ein- und Ausstiegsanimation skaliert wird. 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 in AnimatedContent, bis der Wechsel zum Ein- und Beenden abgeschlossen ist. (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 und AnimatedVisibility 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, wenn readOnly 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 wie MutableIntState 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 lautet AutoboxingStateCreation. 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 dazu warning "AutoboxingStateCreation" in der build.gradle- oder build.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 in AnimatedContent 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 in LookaheadScope. Damit können SubcomposeLayouts 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önnen SubcomposeLayout-Untertypen ohne bedingte Slots wie Scaffold, TabRow und BoxWithConstraints standardmäßig mit Lookaheads verwendet werden. (Id84c8)
  • Benennen Sie infix Fun in togetherWith um, um Übergänge beim Ein- und Ausblenden zu kombinieren. Neuer AnimatedContentScope als Empfänger für das Inhalts-Lambda. (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 funktioniert SubcomposeLayout in einer LookaheadScope ordnungsgemäß. Demnächst werden bestimmte SubcomposeLayout-Subtypen sofort unterstützt.

API-Änderungen

  • Neue SubcomposeLayout API, die eine zusätzliche Richtlinie für Zwischenwerte zum Verarbeiten von Mess-/Layoutlogik während Lookahead-Animationen verwendet. (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 in AnimatedContentTransitionScope umbenannt. scaleIn und scaleOut 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 rememberInfiniteTransition und allen Erweiterungsfunktionen für InfiniteTransition 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 auf InfiniteTransition und Transition unterstützt (z.B. InfiniteTransition#animateColor) (I56ef7)

API-Änderungen

  • Die APIs InfiniteTransition#TransitionAnimationState und InfiniteTransition#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, der withFrameNanos oder withFrameMillis 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 dem TestMonotonicFrameClock-Konstruktor und der Factory-Funktion hinzugefügt, um Code nach withFrameNanos-Callbacks auszuführen, aber bevor die Koroutinen der Aufrufer fortgesetzt werden. (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 und Animatable 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 Erstellung von Animationen wird jetzt in den Entwickleroptionen die Einstellung für die Skala der Animatordauer unterstützt.
  • Große Auswahl neuer experimenteller Easing-Kurven
  • AnimatedImageVector unterstützt jetzt repeatCount und repeatMode

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 jetzt repeatCount und repeatMode (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! Bei der Erstellung von Animationen wird jetzt in den Entwickleroptionen die Einstellung „Skalierung der Animator-Dauer“ unterstützt. (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 von animatedVectorResource, um eine <animated-vector>-Ressourcendatei zu laden.
    • Verwende rememberAnimatedVectorResource anstelle von AnimatedImageVector#painterFor, um ein AnimatedImageVector zu rendern. (I9c300)

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 unter androidx.compose.ui.platform.RenderNodeLayer.updateDisplayList beheben (aosp/1947059, b/206677462)
  • Ein Absturz wurde behoben, der beim Lesen aus der Zwischenablage unter Android durch Inhalte in der Zwischenablage verursacht wurde. (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 von animatedVectorResource, um eine <animated-vector>-Ressourcendatei zu laden.
    • Verwende rememberAnimatedVectorResource anstelle von AnimatedImageVector#painterFor, um ein AnimatedImageVector zu rendern. (I9c300)

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

  • Der neue Modifikator "Modifier.onPlaced" wurde hinzugefügt, damit die Placement-Änderungen beobachtet werden können. Daher können auf Grundlage der beobachteten Platzierungsänderung weitere Änderungen am Offset des untergeordneten Modifizierers vorgenommen werden. (I558fd)
  • Neue Unterstützung für contentKey in Crossfade. ContentKey wird für die Gleichheitsprüfung durch das Animationssystem verwendet. Daher ist eine benutzerdefinierte Unterscheidung von Zuständen möglich, indem ein entsprechender contentKey für verschiedene Zustände angegeben wird.

    ContentKey wird auch als Schlüssel zum Speichern und Wiederherstellen von Inhalten verwendet. (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 ermöglichen sie es Tools, die Animationen und ihre Konfigurationen in „Übergänge“ zu prüfen. (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 ermöglichen sie es Tools, die Animationen und ihre Konfigurationen in „Übergänge“ zu prüfen. (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 der AnimatedVisibility APIs sind jetzt stabil. MutableTransitionState.isIdle befindet sich ebenfalls nicht mehr in der Testphase. (I5072d)

  • Nicht abwärtskompatible Änderung: Lambdas in Enter/ExitTransition-Factoryen wurden 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 Repeatable und unfiniteRepeatable unterstützt, um die Startzeit zu verzögern oder die Animation vor dem Start der Animation zu beschleunigen. Dieser Startversatz wird nicht wiederholt (Ic679f, b/195079908).
  • Neuer Übergang zwischen Ein- und Ausstieg für die Skalierung. Er kann in Kombination mit anderen Arten von Zugangs-/Ausgangsübergängen verwendet werden. (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 befinden sich jetzt im neuen Modul androidx.compose.animation:animation-graphics. (I60873)

Fehlerkorrekturen

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 Compose-Blog.

Bekannte Probleme

  • Wenn du Android Studio Bumblebee Canary 4 oder AGP 7.1.0-alpha04/7.1.0-alpha05 verwendest, 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 AGP 7.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 nach androidx.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. Die Inhaltsänderung wird mithilfe des anpassbaren ContentTransform-Elements verwaltet, wenn neue Zielinhalte eingegeben werden und erste Inhalte verlassen. Um ein benutzerdefiniertes Erscheinungsbild zu erzeugen, können verschiedene Kombinationen von Eingabe- und Ausstiegsübergängen verwendet werden. Im Rahmen der Inhaltstransformation animiert AnimatedContent automatisch seine Größe, damit sie mit dem eingehenden Inhalt übereinstimmt. (I2c3df)
  • ManualFrameClock wurde entfernt. Wenn Sie Animationen steuern müssen, verwenden Sie stattdessen composeTestRule.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 im src/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 von adb 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 Zeichen H, S und P, 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 Klasse androidx.compose.runtime.SlotTable hätte beispielsweise den Deskriptor Landroidx/compose/runtime/SlotTable;.

  • <METHOD_SIGNATURE> ist die Signatur der Methode und enthält den Namen sowie die Parametertypen und Rückgabetypen der Methode. Die Methode fun isPlaced(): Boolean für LayoutNode hat beispielsweise die Signatur isPlaced()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 eine "heiße" Methode ist und im Voraus kompiliert werden sollte.

  • 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 App erstellt wird, die diese Artefakte enthält, werden diese Regeln zusammengeführt und die zusammengeführten Regeln werden verwendet, um ein kompaktes binäres ART-Profil zu erstellen, das für die App spezifisch ist. ART kann dieses Profil dann bei der Installation der App auf Geräten nutzen, um im Voraus eine bestimmte Teilmenge der Anwendung zu kompilieren, um die Leistung der Anwendung 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 und detectHorizontalGestures 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 in einem MutableTransitionState unterstützt. Dadurch können auch die Animationsstatus außerhalb von AnimatedVisibility über currentState und isIdle beobachtet werden.
    • Unterstützung bei der Umstellung von Kindern auf Kinder
    • Unterstützen Sie benutzerdefinierte Übergangsanimationen zum Beenden und Eingeben in animateVisibility mithilfe von AnimationScope.transition
    • Der neue animateEnterExit-Modifikator steht für alle untergeordneten Elemente von ananimateView zur Verfügung.
    • Die animateVisibility APIs, die einen initiallyVisible-Parameter verwenden (I702f3) wurden verworfen.

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 und BoxWithConstraintsScope 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.
    • Schnittstellen sind für das Ausgeben und Erfassen von Interaktionsereignissen verantwortlich.
    • Anstatt interactionState = remember { InteractionState() } an Komponenten wie Button und Modifier.clickable() zu übergeben, verwenden Sie interactionSource = 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)
  • Die Pakete der Methoden „smooScrollBy“ und „scrollBy“ wurden in androidx.compose.foundation.gestures.* geändert (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. Du kannst einen Zustand über rememberDraggableState { delta -> } erstellen, um das gleiche Verhalten wie zuvor zu erhalten (Ica70f, b/175294473).
  • Die APIs animate,animateValue und animateValue wurden entfernt (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 ist jetzt das Speichern von Schlüsseln erforderlich, um anzugeben, wann die Koroutine zur Erkennung der Zeigereingabe für neue Abhängigkeiten neu gestartet werden soll. (I849cd)
  • „Bounds“ wurde in „DpRect“ umbenannt (I4b32a).
  • Den Parameternamen für AnimationSpec wurde im gesamten Animationssystem mit AnimationSpec vereinheitlicht. Beschränken Sie auch Enter/ExitTransition, 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 wie remember { mutableStateOf(0) }, entfernen wir die zusammensetzbare Funktion savedInstanceState { 0 }. Sie sollten stattdessen rememberSaveable { mutableStateOf(0) } verwenden. Die Speicherung und Wiederherstellung erfolgen automatisch, wenn der im MutableState verwendete Typ im Bundle gespeichert werden kann. Wenn Sie bisher ein benutzerdefiniertes Saver-Objekt übergeben haben, müssen Sie eine neue Überlastung von „merkSaveable“ mit dem Parameter stateSaver verwenden. Die Nutzung sieht so aus: val holder = rememberSaveable(stateSaver = HolderSaver) { mutableStateOf(Holder(0)) } (Ib4c26, b/177338004)
  • Die Methodensignatur von Crossfade wurde aktualisiert, damit sie mit dem Rest des Animationssystems konsistenter ist. (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 aktualisiert, damit sie mit dem Rest des Animationssystems konsistent ist. (I0bf75, b/177457083)
  • Die Funktion „ananibleValue/Float“ wird jetzt nicht mehr unterstützt. Verwenden Sie stattdessen „Animatable“. (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)
  • Ein InfiniteAnimationPolicy-Kontextelement für die Koroutine wurde eingeführt, das in unendlichen Animationen angewendet wird. Standardmäßig ist keine Richtlinie installiert, außer wenn Tests mit ComposeTestRule ausgeführt werden. (I50ec4, b/151940543)
  • Die Methoden zum Löschen und copy() wurden aus mehreren Klassen entfernt, 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 in Composer:runtime und AndroidUiDispatcher ist in Composer:ui. (Ib5c36)
  • Animation.isInfinite und VectorizedAnimationSpec.isInfinite wurden hinzugefügt, die signalisieren, ob eine Animation unendlich ist oder nicht. Diese können bei Implementierungen von Animationen verwendet werden, um eine besondere Behandlung dieser Animationen zu ermöglichen. Beispielsweise kann eine spezielle „Verbleibende Zeit“-Meldung angezeigt werden oder während Tests kann die Animation abgebrochen werden, um zu verhindern, dass auf unbestimmte Zeit auf eine Leerlaufzeit gewartet wird. (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)
  • Es wird ein Labelfeld für Übergänge und untergeordnete Animationen hinzugefügt, die in Tools (I619fb) angezeigt werden sollen.
  • "animateAsState" ist jetzt "animateFooAsState", wobei "Foo" der Typ der animierten Variablen ist, z. B. Float, Dp, Offset usw. (Ie7e25).
  • Neue InfiniteTransition zum Ausführen einer beliebigen Anzahl untergeordneter Animationen. (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 entfernt. (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) und itemsIndexed(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 wurde entfernt und PointerInputChange geändert, um alle Felder von PointerInputData bereitzustellen. PointerInputEvent und PointerInputEventData wurden intern gemacht, da sie in keiner öffentlichen API verwendet werden. (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

  • Die Geschwindigkeit wurde so geändert, dass sie Komponenten und mathematische Operationen enthält. (Ib0447)
  • @ExperimentalTesting wurde in @ExperimentalTestApi umbenannt, damit sie mit ähnlichen Annotationen der experimentellen API übereinstimmt (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 der Animationen gewährleistet. Neue DecayAnimationSpec zur Unterstützung mehrdimensionaler Abklinganimationen (I820f2, b/168014930)
  • animate() wird jetzt durch animateAsState() ersetzt, das anstelle von T einen State<T>-Wert zurückgibt. Dies ermöglicht eine bessere Leistung, da der Entwertungsbereich darauf eingegrenzt werden kann, wo der Statuswert 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. wurden in einen Animationskern verschoben und die alten VectorConveters wurden eingestellt (If0c4b).
  • Einführung eines komplett neuen Satzes von Transition APIs mit verbesserter Nutzerfreundlichkeit und Unterstützung für dynamisch hinzugefügte Animationen und dynamisch berechnete Animationsziele. Diese APIs sind zur einfachen Unterscheidung von der TransitionDefinition-basierten API als experimentell gekennzeichnet. (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)
  • Zum Anhalten von Zeigereingabe-APIs wurde HandlePointerInputScope in AwaitPointerEventScope und handlePointerInput() in awaitPointerEventScope() umbenannt. (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 zum 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 zu content migriert. (Iec48e)
  • Zuvor eingestellte APIs wurden entfernt:
    • Modifier.onPositioned wurde entfernt. Verwende Modifier.onGloballyPositioned.
    • Modifier.onDraw wurde entfernt. Verwende Modifier.onDrawBehind.
    • Modifier.plus wurde entfernt. Verwende Modifier.then.
    • Color.Unset wurde entfernt. Verwende Color.Unspecified.
    • PxBounds Kurs wurde entfernt. Verwenden Sie stattdessen Rect.
    • (Ie9d02, b/172562222)
  • Vorübergehend hinzugefügte Option, mit der TestAnimationClock von MonotonicFrameClock gesteuert wird (I1403b, b/173402197)

Fehlerkorrekturen

  • Umbenennung von Modifier.drawLayer in Modifier.graphicsLayer Änderungen der zugehörigen Klassen in GraphicsLayer gemäß dem API-Council-Feedback (I0bd29, b/173834241)
  • Modifier.scale/rotate APIs wurden als praktische Funktionen fürdrawLayer hinzugefügt.
    • Modifier.drawOpacity wurde in Modifier.alpha umbenannt.
    • "Modifier.drawShadow" wurde in "Modifier.shadow" umbenannt (I264ca, b/173208140).
  • Die Verfügbarkeits- und Positionsfelder von PointerInputData können jetzt nicht mehr 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) befindet sich jetzt in der Testphase (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

  • Aktivieren Sie Übergänge in ComposeTestRule; entfernen Sie die Option, um den blinkenden Cursor in ComposeTestRule zu aktivieren. (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 Animationsschnittstelle und abgeleitete Klassen: Diese Klassen speichern die Start- und Endbedingungen für Animationen und ermöglichen daher, Wert und Geschwindigkeit nur über die Spielzeit abzufragen (Ie95bd, b/163329867).

Fehlerkorrekturen

  • „OnPositionedModifier“ wird in „OnGloballyPositionedModifier“ und „onPositioned()“ in „onGloballyPositioned()“ umbenannt. (I587e8, b/169083903).
  • Die APIs „contentColor()“ und „currentTextStyle()“ werden verworfen und durch die Umgebungselemente „AmbientContentColor“ und „AmbientTextStyle“ 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
    • TextStyleAmbient -> AmbientTextStyle
    • IndicationAmbient -> AmbientIndication
    • EmphasisAmbient -> AmbientEmphasisLevels
    • 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 „rootAnimationClockFactory“, „transitsEnabled“, „blinkingCursorEnabled“ und „textInputServiceFactory“ mit @VisibleForTesting, machen sie zu einer internen API und verbergen ihre kdoc-Dateien (I554eb, b/168308412).

Fehlerkorrekturen

  • Aktualisierung vieler Grafik-APIs
    • APIs zur Transformation von Skalierung und Rotation wurden aktualisiert, sodass ein einzelner Offset-Parameter zur Darstellung der Pivot-Koordinaten anstelle von separaten Gleitkommaparametern für die x/y-Koordinaten in DrawScope und DrawTransform verwendet wird.
    • Entfernung der Methoden Rect.expandToInclude und Rect.join
    • Die Dokumentation für den Radius wurde aktualisiert: „oval zusätzlich zum elliptischen
    • Es wurde eine Dokumentation hinzugefügt, in der angegeben wird, dass der öffentliche Konstruktor für die Inline-Radiusklasse nicht direkt aufgerufen werden soll. Stattdessen sollten Radius-Objekte über ihre Funktionskonstruktoren instanziiert werden.
    • RoundRect-APIs für die Abfrage von topRight,bottomRight, bottomCenter usw. wurden entfernt.
    • Eingestellte Rect.shift-Funktion zugunsten von Rect.translate
    • RoundRect.grow und Rect.shrink APIs entfernt
    • Umbenennung von RoundRect.outerRect in Rect.boundingRect
    • Die Methoden "RoundRect.middleRect/tallMiddleRect/wideMiddleRect" und "Rect.isStadium" wurden entfernt.
    • „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 verwendet jetzt Radius-Attribute anstelle einzelner Parameter für x/y-Radiuswerte.
    • Größen-APIs, die von einem Rectangle mit Ursprung bei 0,0 angenommen wurden, wurden entfernt.
    • Zerstörungs-API zu Radius hinzugefügt
    • Migration verschiedener RoundRect-Erweiterungsfunktionen zu Eigenschaften
    • (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 von dieser Uhr etwas auf einen Frame wartet. runWithManualClock als Ersatz für runBlocking, wenn Tests ausgeführt werden, die eine manualFrameClock benötigen. TestUiDispatcher.Main ermöglicht einfachen Zugriff auf den Haupt-UI-Dispatcher in deinen 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")
        }
    }
    

    (I0a85b, b/161247083)

Fehlerkorrekturen

  • onPreCommit wurde verworfen. Das Verhalten von onPreCommit ist jetzt wieder verfügbar.

    onCommit und onActive werden jetzt in demselben Choreografen-Frame ausgeführt, in dem sich die Komposition ändert, und nicht am Anfang des nächsten Choreografen-Frames. (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 „animateVisibilty“ animiert das Erscheinungsbild und das Verschwinden der untergeordneten Inhalte.

    EnterTransition und ExitTransition werden eingeführt, um mit der zusammensetzbaren Funktion „animatedVisibilty“ zu funktionieren, um drei verschiedene Arten von Darstellungs- und Verschwindungsanimationen bereitzustellen: Ausblenden, Verschieben und Maximieren/Verkleinern des Inhalts. Die verschiedenen Animationsarten können kombiniert werden, um ein individuelleres Erscheinungsbild zu erreichen. (Idda11)

  • Eingestellte PxBounds zugunsten von Rect. Aktualisierung aller Verwendungen von PxBounds mit rect und Hinzufügen der geeigneten Verwerfen/Ersetzen mit Annotationen zur Unterstützung der Migration. (I37038, b/162627058)

Fehlerkorrekturen

  • PlacementScope.placeAbsolute() wurde in PlacementScope.place() umbenannt und die vorherige PlacementScope.place() wurde in PlacementScope.placeRelative() umbenannt. Daher spiegelt die Methode PlacementScope.place() die Position in Rechts-nach-links-Kontexten nicht mehr automatisch wider. Verwenden Sie stattdessen PlacementScope.placeRelative(). (I873ac, b/162916675)
  • Die zusammensetzbare Funktion state { ... } wurde zugunsten expliziter Aufrufe von remember { mutableStateOf(...) } eingestellt. Dies reduziert die API-Oberfläche insgesamt und die Anzahl der Konzepte für die Statusverwaltung. Außerdem entspricht es dem Muster by mutableStateOf() für die Delegierung von Klassenattributen. (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 zum Umwandeln integrierter Einheiten sind jetzt über Foo.VectorConverter verfügbar. z. B. Dp.VectorConverter, Color.VectorConverter, Float.VectorConverter usw. (I3e273)
  • Unterstützung des End-Listeners in Modifier.animateContentSize(), sodass der Listener nach Abschluss der Animationsänderung sowie der Start-/Endgröße der Animation benachrichtigt wird. (I277b2)
  • Neuer animateContentSize-Modifikator, mit dem die Änderung der Layoutgröße des untergeordneten Modifikators (Ieffdc) animiert wird
  • Es wurde MonotonicFrameAnimationClock hinzugefügt, mit dem Sie eine MonotonicFrameClock als AnimationClockObservable verwenden können, um die Lücke zwischen den neuen, auf Koroutinen basierenden Uhren und APIs zu schließen, die noch die alten Callback-basierten Uhren verwenden.

    Die MonotonicFrameClock-Entsprechung für ManualAnimationClock ist jetzt ManualFrameClock. (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)
  • Legen Sie fest, dass Typ T explizit für TransitionDefinition angegeben wird. (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". „Then“ (Dann) hat ein stärkeres Signal für die Reihenfolge, während gleichzeitig die Eingabe von Modifier.padding().background() + anotherModifier verhindert 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 gemäß den neuen Code-Snippets aktualisieren, die oben unter Abhängigkeiten angeben gezeigt werden.

API-Änderungen

  • Die Transition API gibt jetzt einen TransitionState zurück, anstatt den TransitionState an untergeordnete Elemente zu übergeben. Dadurch wird die API konsistenter mit Anime() APIs. (I24e38)
  • Modifikatorparameter für Crossfade hinzugefügt (I87cfe, b/159706180)
  • Verwenden Sie in den APIs der obersten Ebene AnimationSpec anstelle von AnimationBuilder, um das Konzept der Spezifikation für statische Animationen zu verdeutlichen.
    • Verbessern Sie den Übergangs-DSL, indem Sie die Lambda-Anforderung zum Erstellen von AnimationSpecs wie Tween, Spring entfernen. Stattdessen nehmen sie Konstruktorparameter direkt.
    • Verbessern Sie die Benutzerfreundlichkeit von AnimationSpec, um Konstruktoren zu öffnen, anstatt auf Builder zu setzen.
    • Ändern Sie die Dauer und die Verzögerung für KeyFrames und "Tween" in "Int". Dadurch werden unnötige Typumwandlungen und eine Methodenüberlastung (zur Unterstützung von Long und Int) vermieden. (Ica0b4)
  • Verwendung von "IntPx" durch "Int." ersetzt. "IntPxPosition" durch "IntOffset" ersetzt. "IntPxSize" wurde durch "IntSize" ersetzt. (Ib7b44)
  • Um die Anzahl der Klassen zur Darstellung von Größeninformationen zu konsolidieren, sollten Sie die Verwendung der Klasse "Size" anstelle von "PxSize" standardisieren. Dies bietet die Vorteile einer Inline-Klasse, um einen Long-Wert zu verwenden, um 2 Gleitkommawerte zu verpacken, um Breite und Höhe als Gleitkommazahlen darzustellen. (IC0191)
  • Um die Anzahl der Klassen zur Darstellung von Positionierungsinformationen zu konsolidieren, sollten Sie die Verwendung der Offset-Klasse anstelle von PxPosition standardisieren. Dies bietet die Vorteile einer Inline-Klasse, um einen Long-Wert zu verwenden, um 2 Gleitkommawerte zu verpacken, um x- und y-Offsets darzustellen, die als Gleitkommazahlen dargestellt werden. (I3ad98)
  • Die Verwendung der Px-Klasse in verschiedenen Zusammensetzungsklassen wurde im Rahmen des umfangreichen Refaktorierungsaufwands ersetzt, bei dem für Pixelparameter nur Dp und primitive Typen verwendet werden (I086f4).
  • animate() wurde hinzugefügt für Dp, Px, Size, Position, Bounds, PxPosition, PxSize, PxBounds, IntPx, IntPxSize, IntPxPosition, IntPxBounds und AnimationVector (Ib7518).
  • Bei Überblenden wird jetzt der optionale AnimationBuilder-Parameter unterstützt, um die Animation zu konfigurieren (I6d6e0).
  • Alle Farbverwendungen, für die Nullwerte zulässig sind, in der API durch eine Funktion ersetzt, die keine Nullwerte zulässt, und Color.Unset anstelle von null verwenden (Iabaa7)
  • ValueHolder-Klasse entfernt. Die Klassen "animateValue" und "animateFloat" wurden umstrukturiert, um das Feld für den Animationswert abzustrahieren, 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. In diesem Modus wird die vorherige Iteration rückgängig gemacht, da sich die Animation in RepeatableSpec oder VectorizedRepeatableSpec wiederholt. (Ibe0f5)
  • API-Ergänzungen zu manualAnimationClock: hasObservers: Boolean und Konstruktorparameter dispatchOnSubscribe: Boolean (Iaa134)
  • Es wurden APIs zum Abrufen von Minimal-/Maximalgrenzen in animateFloat hinzugefügt (Icd9cc).

Fehlerkorrekturen

  • runOnIdleCompose umbenannt in runOnIdle (I83607)
  • Mehrere Test-APIs wurden umbenannt, um die Intuitivität zu verbessern. Alle findenXYZ APIs wurden in onNodeXYZ umbenannt. Alle doXYZ APIs wurden umbenannt, um XYZ auszuführen. (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)
  • Die Verwendung der Px-Klasse in verschiedenen Zusammensetzungsklassen wurde im Rahmen des umfangreichen Refaktorierungsaufwands ersetzt, bei dem für Pixelparameter nur Dp und primitive Typen verwendet werden. Vollständige Px-Klasse gelöscht (I3ff33)
  • Die Verwendung der Px-Klasse in verschiedenen Zusammensetzungsklassen wurde im Rahmen des umfangreichen Refaktorierungsaufwands ersetzt, bei dem für Pixelparameter nur Dp und primitive Typen verwendet werden (Id3434).
  • Crossfade kann jetzt mit Null als Anfangswert verwendet werden (Iad6a4, b/155947711).
  • Die Verwendung der Px-Klasse in verschiedenen Zusammensetzungsklassen wurde im Rahmen des umfangreichen Refaktorierungsaufwands ersetzt, bei dem für Pixelparameter nur Dp und primitive Typen verwendet werden (I19d02).
  • CanvasScope-Implementierungen wurden konsolidiert, sodass es jetzt nur noch DrawScope und ContentDrawScope gibt. CanvasScope wurde in DrawScope umbenannt. DrawScope wurde aktualisiert, um die Dichte-Oberfläche zu implementieren und die Unterklasse „LayoutDirection“ von „Deleted DrawScope“ in ContentDrawScope zu implementieren. Die Funktionen „Painter“ und „PainterModifier“ werden jetzt nicht mehr selbst beibehalten, da DrawScope diese Eigenschaft bereits zur Verfügung stellt, ohne sie manuell anzugeben (I1798e).
  • Wir haben die Erstellung von APIs auf höherer Ebene aktualisiert, die einen Canvas zur Verfügung stellen, um stattdessen CanvasScope bereitzustellen. Nutzer müssen dadurch ihre eigenen Paint-Objekte nicht mehr verwalten. Nutzer, die weiterhin Zugriff auf einen Canvas benötigen, können die Erweiterungsmethode „drawCanvas“ verwenden. Sie bietet einen Callback, um Zeichenbefehle mit dem zugrunde liegenden Canvas auszugeben. (I80afd)
  • Die Parameter verticalGravity und horizontalGravity wurden zu Zeile bzw. Spalte hinzugefügt. (I7dc5a)
  • Modul ui-text wurde in ui-text-core umbenannt (I57dec).
  • Verbesserung der DrawModifier API:
    • 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 und runOnUiThread sind jetzt globale Funktionen anstelle von Methoden in ComposeTestRule. (Icbe8f)
  • [Mutable]Operatoren von Status-Property-Delegationen wurden in Erweiterungen verschoben, um Optimierungen für Kotlin 1.4-Property-Delegationen zu unterstützen. Aufrufer müssen Importe hinzufügen, um by state { ... } oder by mutableStateOf(...) weiterhin verwenden zu können. (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 geeigneten Modifikatoren ersetzt werden (Idf5e0).
  • LayoutFlexible wurde in LayoutWeight umbenannt. Zum Ausfüllen muss enger Parameter umbenannt werden. (If4738)
  • Die zusammensetzbare Funktion „Opacity“ wurde durch den Modifikator „drawOpacity“ ersetzt. (I5fb62)
  • Tests mit AndroidComposeTestRule stellen jetzt eine Animationsuhr im Stammverzeichnis der Komposition bereit, mit der sie manuell pausiert, fortgesetzt und fortgesetzt werden kann. (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 wurden verschiedenen Inline-Klassentypen hinzugefügt, darunter:
    • Abweichung
    • Größe
    • Radius
    • Bewegung
    • TransformOrigin
    • Verworfene Methode für das Companion-Objekt „Size.copy“ durch Verwendung der Instanzkopiermethode (Ife290, b/159905651)
  • androidx.compose.ViewComposer wurde nach androidx.ui.node.UiComposer androidx.compose.Emittable verschoben. Es war redundant mit ComponentNode. androidx.compose.ViewAdapters wurde entfernt. Sie werden nicht mehr unterstützt. Compose.composeInto wurde eingestellt. Verwende stattdessen setContent oder setViewContent. „Compose.disposeComposition“ wurde eingestellt. Verwenden Sie stattdessen die Methode dispose für die von setContent zurückgegebene Composition. androidx.compose.Compose.subcomposeInto wurde in androidx.ui.core.subcomposeInto verschoben. ComponentNode#emitInsertAt wurde in ComponentNode#insertAt ComponentNode#emitRemoveAt umbenannt in ComponentNode#removeAt ComponentNode#emitMode umbenannt in Component0#moveIdefComponentNode0.Idef.

Alle Inhalte und Codebeispiele auf dieser Seite unterliegen den Lizenzen wie im Abschnitt Inhaltslizenz beschrieben. Java und OpenJDK sind Marken oder eingetragene Marken von Oracle und/oder seinen Tochtergesellschaften.

Zuletzt aktualisiert: 2024-06-26 (UTC).