Poniższy schemat pomoże Ci zdecydować, którego interfejsu API użyć do wdrożenia animacji.
Aby wybrać interfejs API animacji najbardziej odpowiedni do Twojego przypadku użycia, skorzystaj z tego schematu decyzyjnego:
- Czy animacja jest oparta na grafice (czyli SVG lub obrazach)?
- Tak. Czy używa prostych SVG (czyli ikony z mikroanimacjami)?
- Tak:
AnimatedVectorDrawable. - Nie: zewnętrzny framework animacji, np.
Lottie.
- Tak:
- Nie. Czy animacja ma się powtarzać w nieskończoność?
- Tak:
rememberInfiniteTransition. - Nie. Czy animujesz układ?
- Tak. Czy przełączasz się między elementami kompozycyjnymi o różnej treści?
- Tak. Czy używasz Navigation-Compose?
- Tak:
composable()z ustawionymi wartościamienterTransitioniexitTransition. - Nie:
AnimatedContent,CrossfadelubPager.
- Tak:
- Nie. Czy animujesz pojawianie się lub znikanie treści?
- Tak:
AnimatedVisibilitylubanimateFloatAsStatezModifier.alpha(). - Nie. Czy animujesz zmianę rozmiaru?
- Tak:
Modifier.animateContentSize. - Nie. Czy animujesz inną właściwość układu (np. przesunięcie lub dopełnienie)?
- Tak: zobacz „Czy właściwości są od siebie całkowicie niezależne?”.
- Nie. Czy animujesz elementy listy?
- Tak:
animateItem().
- Tak:
- Tak:
- Tak:
- Tak. Czy używasz Navigation-Compose?
- Nie. Czy animujesz wiele właściwości?
- Tak. Czy właściwości są od siebie całkowicie niezależne?
- Tak:
animate*AsState. W przypadku tekstu użyjTextMotion.Animated. - Nie. Czy muszą się zaczynać w tym samym czasie?
- Tak:
updateTransitionzAnimatedVisibility,animateFloat,animateIntitp. - Nie:
AnimatablezanimateTo, wywoływane z różnymi czasami za pomocą funkcji zawieszających.
- Tak:
- Tak:
- Nie. Czy animacja ma zdefiniowane wartości docelowe?
- Tak:
animate*AsState. W przypadku tekstu użyjTextMotion.Animated. - Nie. Czy animacja jest sterowana gestami i jest jedynym źródłem wiarygodnych danych?
- Tak:
AnimatablezanimateTo/snapTo. - Nie. Czy jest to animacja jednorazowa bez zarządzania stanem?
- Tak:
AnimationStatelubanimate. - Nie. Nie ma tu odpowiedzi? Prześlij prośbę o dodanie funkcji.
- Tak:
- Tak:
- Tak:
- Tak. Czy właściwości są od siebie całkowicie niezależne?
- Tak. Czy przełączasz się między elementami kompozycyjnymi o różnej treści?
- Tak:
- Tak. Czy używa prostych SVG (czyli ikony z mikroanimacjami)?
Pobierz schemat w formacie PDF.