Aşağıdaki şema, animasyonunuzu uygulamak için hangi API'yi kullanacağınıza karar vermenize yardımcı olur.
Kullanım alanınıza en uygun animasyon API'sini seçmek için aşağıdaki karar ağacı sorularını izleyin:
- Animasyonum daha çok sanat eserine mi benziyor ve görsel öğeler içeriyor mu? Ör. SVG'ler veya resimler
- Evet: Basit SVG'leri var mı? ör. mikro animasyonlar içeren bir simge
- Evet:
AnimatedVectorDrawable
- Hayır: Üçüncü taraf animasyon çerçevesi (ör.
Lottie
)
- Evet:
- Hayır: Sonsuza kadar tekrarlanması gerekir mi?
- Evet:
rememberInfiniteTransition
- Hayır: Bu bir düzen animasyonu mu?
- Evet: Farklı içeriğe sahip birden fazla composable arasında geçiş yapılsın mı?
- Evet: Gezinme-yazma ile mi?
- Evet:
enterTransition
veexitTransition
ayarlanmış haldecomposable()
- Hayır:
AnimatedContent
,Crossfade
veyaPager
- Evet:
- Hayır: Görünüm / kaybolma animasyon?
- Evet:
Modifier.alpha()
ileAnimatedVisibility
veyaanimateFloatAsState
- Hayır: Animasyon boyutu mu kullanıyorsunuz?
- Evet:
Modifier.animateContentSize
- Hayır: Diğer düzen özellikleri (ör. ofset, dolgu vb.)
- Evet: Bkz. "Mülkler birbirinden tamamen bağımsız mı?"
- Hayır: Öğe animasyonları listelensin mi?
- Evet:
animateItemPlacement()
(yeniden sıralama ve silme özelliği yakında kullanıma sunulacak)
- Evet:
- Evet:
- Evet:
- Evet: Gezinme-yazma ile mi?
- Hayır: Birden fazla mülk için animasyon eklemeniz gerekiyor mu?
- Evet: Özellikler birbirinden tamamen bağımsız mı?
- Evet:
animate*AsState
, Metin içinTextMotion.Animated
kullan - Hayır: Aynı anda başlatılsın mı?
- Evet: Evet:
updateTransition
-AnimatedVisibility
,animateFloat
,animateInt
vb. - Hayır:
animateTo
ileAnimatable
farklı zamanlamalarla çağrıldı (askıya alma işlevleri kullanılarak)
- Evet: Evet:
- Evet:
- Hayır: Animasyonun önceden tanımlanmış hedef değerleri var mı?
- Evet:
animate*AsState
, Metin içinTextMotion.Animated
kullan - Hayır: Harekete dayalı animasyon? Tek doğru kaynak, animasyonunuz mu?
- Evet:
animateTo
ileAnimatable
/snapTo
- Hayır: Durum yönetimi olmadan tek seferlik animasyon mu?
- Evet:
AnimationState
veyaanimate
- Hayır: Yanıt burada yok mu? Özellik isteğinde bulunma
- Evet:
- Evet:
- Evet:
- Evet: Özellikler birbirinden tamamen bağımsız mı?
- Evet: Farklı içeriğe sahip birden fazla composable arasında geçiş yapılsın mı?
- Evet:
- Evet: Basit SVG'leri var mı? ör. mikro animasyonlar içeren bir simge
Şemanın PDF sürümünü indirin.