Anhand des folgenden Diagramms können Sie entscheiden, mit welcher API Sie die Animation implementieren möchten.
Beantworten Sie die folgenden Fragen zum Entscheidungsbaum, um die für Ihren Anwendungsfall am besten geeignete Animations-API auszuwählen:
- Ist meine Animation eher eine Art Grafik und besteht aus vielen visuellen Elementen, z.B. SVGs oder Bildern?
- Ja: Sind einfache SVGs verfügbar, also ein Symbol mit Mikroanimationen?
- Ja:
AnimatedVectorDrawable
- Nein: Animations-Framework von Drittanbietern, z.B.
Lottie
- Ja:
- Nein: Muss es für immer wiederholt werden?
- Ja:
rememberInfiniteTransition
- Nein: Handelt es sich um eine Layout-Animation?
- Ja: Sie möchten zwischen mehreren zusammensetzbaren Funktionen mit unterschiedlichen Inhalten wechseln?
- Ja: Mit Navigation-compose?
- Ja:
composable()
mitenterTransition
undexitTransition
festgelegt - Nein:
AnimatedContent
,Crossfade
oderPager
- Ja:
- Nein: Erscheinen / Verschwinden wird animiert?
- Ja:
AnimatedVisibility
oderanimateFloatAsState
mitModifier.alpha()
- Nein: Größe wird animiert?
- Ja:
Modifier.animateContentSize
- Nein: Andere Layouteigenschaft, z. B. Offset oder Abstand.
- Ja: Siehe „Sind die Unterkünfte vollständig unabhängig voneinander?“
- Nein: Animationen von Listenelementen?
- Ja:
animateItemPlacement()
(neu anordnen und löschen)
- Ja:
- Ja:
- Ja:
- Ja: Mit Navigation-compose?
- Nein: Müssen mehrere Immobilien animiert werden?
- Ja: Sind die Unterkünfte vollständig unabhängig voneinander?
- Ja:
animate*AsState
, für TextTextMotion.Animated
verwenden - Nein: Zur selben Zeit starten?
- Ja: Ja:
updateTransition
mitAnimatedVisibility
,animateFloat
,animateInt
usw. - Nein:
Animatable
mitanimateTo
mit unterschiedlichem Timing aufgerufen (mithilfe von Sperrfunktionen)
- Ja: Ja:
- Ja:
- Nein: Enthält die Animation eine Reihe vordefinierter Zielwerte?
- Ja:
animate*AsState
, für TextTextMotion.Animated
verwenden - Nein: Bewegungsgesteuerte Animation? Ist Ihre Animation die einzige Informationsquelle?
- Ja:
Animatable
mitanimateTo
/snapTo
- Nein: One-Shot-Animation ohne Statusverwaltung?
- Ja:
AnimationState
oderanimate
- Nein: Die Antwort fehlt hier? Funktionsanfrage stellen
- Ja:
- Ja:
- Ja:
- Ja: Sind die Unterkünfte vollständig unabhängig voneinander?
- Ja: Sie möchten zwischen mehreren zusammensetzbaren Funktionen mit unterschiedlichen Inhalten wechseln?
- Ja:
- Ja: Sind einfache SVGs verfügbar, also ein Symbol mit Mikroanimationen?
Laden Sie die PDF-Version des Diagramms herunter.