नीचे दिए गए डायग्राम से यह तय करने में मदद मिलती है कि ऐनिमेशन लागू करने के लिए किस एपीआई का इस्तेमाल करना है.
यह तय करने के लिए कि आपके इस्तेमाल के उदाहरण के लिए कौनसा ऐनिमेशन एपीआई सबसे सही है, नीचे दिए गए फ़ैसले के पेड़ के सवालों का पालन करें:
- क्या मेरा ऐनिमेशन कला की तरह है, जिसमें कई विज़ुअल एलिमेंट शामिल हैं? जैसे, SVG या इमेज
- हां: क्या इसमें आसान SVGs हैं? जैसे, माइक्रो-ऐनिमेशन वाला आइकॉन
- हां:
AnimatedVectorDrawable
- नहीं: तीसरे पक्ष का ऐनिमेशन फ़्रेमवर्क, जैसे कि
Lottie
- हां:
- नहीं: क्या इसे हमेशा दोहराना है?
- हां:
rememberInfiniteTransition
- नहीं: क्या यह लेआउट ऐनिमेशन है?
- हां: क्या अलग-अलग कॉन्टेंट वाले कई कॉम्पोज़ेबल के बीच स्विच करना है?
- हां: क्या नेविगेशन-कॉम्पोज़ की मदद से?
- हां:
composable()
के साथenterTransition
औरexitTransition
सेट - नहीं:
AnimatedContent
,Crossfade
याPager
- हां:
- नहीं: क्या ऐनिमेशन में दिखाया गया है कि आइटम दिख रहा है या नहीं?
- हां:
Modifier.alpha()
के साथAnimatedVisibility
याanimateFloatAsState
- नहीं: क्या साइज़ को ऐनिमेट किया जा रहा है?
- हां:
Modifier.animateContentSize
- नहीं: अन्य लेआउट प्रॉपर्टी? जैसे, ऑफ़सेट, पैडिंग वगैरह
- हां: "क्या प्रॉपर्टी एक-दूसरे से पूरी तरह से अलग हैं?" देखें
- नहीं: सूची के आइटम के ऐनिमेशन?
- हां:
animateItemPlacement()
(क्रम बदलने और मिटाने की सुविधा जल्द ही उपलब्ध होगी)
- हां:
- हां:
- हां:
- हां: क्या नेविगेशन-कॉम्पोज़ की मदद से?
- नहीं: क्या आपको एक से ज़्यादा प्रॉपर्टी को ऐनिमेट करना है?
- हां: क्या प्रॉपर्टी एक-दूसरे से पूरी तरह से अलग हैं?
- हां:
animate*AsState
, टेक्स्ट के लिए,TextMotion.Animated
का इस्तेमाल करें - नहीं: क्या एक ही समय पर शुरू करना है?
- हां: हां:
AnimatedVisibility
,animateFloat
,animateInt
वगैरह के साथupdateTransition
- नहीं:
Animatable
के साथanimateTo
, जिसे अलग-अलग समय पर कॉल किया गया हो (सस्पेंड फ़ंक्शन का इस्तेमाल करके)
- हां: हां:
- हां:
- नहीं: क्या ऐनिमेशन में पहले से तय की गई टारगेट वैल्यू का सेट है?
- हां:
animate*AsState
, टेक्स्ट के लिएTextMotion.Animated
का इस्तेमाल करें - नहीं: जेस्चर से चलने वाला ऐनिमेशन? क्या आपका ऐनिमेशन ही सटीक जानकारी का एकमात्र सोर्स है?
- हां:
Animatable
के साथanimateTo
/snapTo
- नहीं: क्या स्टेट मैनेजमेंट के बिना एक शॉट वाला ऐनिमेशन बनाना है?
- हां:
AnimationState
याanimate
- नहीं: क्या जवाब यहां नहीं है? किसी सुविधा का अनुरोध करना
- हां:
- हां:
- हां:
- हां: क्या प्रॉपर्टी एक-दूसरे से पूरी तरह से अलग हैं?
- हां: क्या अलग-अलग कॉन्टेंट वाले कई कॉम्पोज़ेबल के बीच स्विच करना है?
- हां:
- हां: क्या इसमें आसान SVGs हैं? जैसे, माइक्रो-ऐनिमेशन वाला आइकॉन
डायग्राम का PDF वर्शन डाउनलोड करें.