Diagram di bawah ini membantu Anda menentukan API apa yang akan digunakan untuk menerapkan animasi.
Ikuti pertanyaan pohon keputusan di bawah ini untuk memilih API animasi yang paling sesuai dengan kasus penggunaan Anda:
- Apakah animasi saya lebih mirip seni, yang terdiri dari banyak elemen visual? Misalnya, SVG atau gambar
- Ya: Apakah template ini memiliki SVG sederhana? yaitu ikon dengan animasi mikro
- Ya:
AnimatedVectorDrawable
- Tidak: Framework animasi pihak ketiga, yaitu
Lottie
- Ya:
- Tidak: Apakah perlu diulang selamanya?
- Ya:
rememberInfiniteTransition
- Tidak: Apakah ini animasi tata letak?
- Ya: Mengubah antara beberapa composable yang memiliki konten berbeda?
- Ya: Dengan navigation-compose?
- Ya:
composable()
denganenterTransition
danexitTransition
ditetapkan - Tidak:
AnimatedContent
,Crossfade
, atauPager
- Ya:
- Tidak: Menganimasikan kemunculan / penghilangan?
- Ya:
AnimatedVisibility
atauanimateFloatAsState
denganModifier.alpha()
- Tidak: Menganimasikan ukuran?
- Ya:
Modifier.animateContentSize
- Tidak: Properti tata letak lainnya? misalnya offset, padding, dll.
- Ya: Lihat "Apakah properti sepenuhnya independen satu sama lain?"
- Tidak: Animasi item daftar?
- Ya:
animateItemPlacement()
(tata ulang dan hapus akan segera hadir)
- Ya:
- Ya:
- Ya:
- Ya: Dengan navigation-compose?
- Tidak: Apakah Anda perlu menganimasikan beberapa properti?
- Ya: Apakah properti sepenuhnya independen satu sama lain?
- Ya:
animate*AsState
, untuk Teks, gunakanTextMotion.Animated
- Tidak: Memulai secara bersamaan?
- Ya: Ya:
updateTransition
denganAnimatedVisibility
,animateFloat
,animateInt
, dll. - Tidak:
Animatable
dengananimateTo
dipanggil dengan pengaturan waktu yang berbeda (menggunakan fungsi penangguhan)
- Ya: Ya:
- Ya:
- Tidak: Apakah animasi memiliki serangkaian nilai target yang telah ditentukan sebelumnya?
- Ya:
animate*AsState
, untuk Teks, gunakanTextMotion.Animated
- Tidak: Animasi berbasis gestur? Animasi Anda adalah satu-satunya sumber ketepatan?
- Ya:
Animatable
dengananimateTo
/snapTo
- Tidak: Animasi satu kali tanpa pengelolaan status?
- Ya:
AnimationState
atauanimate
- Tidak: Jawaban tidak ada di sini? Ajukan permintaan fitur
- Ya:
- Ya:
- Ya:
- Ya: Apakah properti sepenuhnya independen satu sama lain?
- Ya: Mengubah antara beberapa composable yang memiliki konten berbeda?
- Ya:
- Ya: Apakah template ini memiliki SVG sederhana? yaitu ikon dengan animasi mikro
Download diagram versi PDF.