नीचे दिए गए डायग्राम से, यह तय करने में मदद मिलती है कि अपने ऐनिमेशन को लागू करने के लिए, किस एपीआई का इस्तेमाल किया जाए.
नीचे दिए गए डिसिज़न ट्री से जुड़े सवालों का पालन करके चुनें कि आपके इस्तेमाल के उदाहरण के लिए, कौनसा ऐनिमेशन एपीआई सबसे सही है:
- क्या मेरा ऐनिमेशन आर्ट जैसा है जिसमें कई विज़ुअल एलिमेंट हैं? उदाहरण के लिए, SVGs या इमेज
- हां: क्या इसमें सामान्य SVG हैं? उदाहरण के लिए, माइक्रो-ऐनिमेशन वाला आइकॉन
- हां:
AnimatedVectorDrawable
- नहीं: तीसरे पक्ष का ऐनिमेशन फ़्रेमवर्क, उदाहरण के लिए,
Lottie
- हां:
- नहीं: क्या इसे हमेशा दोहराना है?
- हां:
rememberInfiniteTransition
- नहीं: क्या यह कोई लेआउट ऐनिमेशन है?
- हां: क्या अलग-अलग कॉन्टेंट वाले एक से ज़्यादा कंपोज़ेबल में बदलाव करना है?
- हां: नेविगेशन-कंपोज़ की सुविधा इस्तेमाल करके?
- हां:
enterTransition
औरexitTransition
के साथcomposable()
सेट किया गया - नहीं:
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
- नहीं: क्या जवाब यहां नहीं है? सुविधा का अनुरोध करना
- हां:
- हां:
- हां:
- हां: क्या प्रॉपर्टी एक-दूसरे से पूरी तरह अलग हैं?
- हां: क्या अलग-अलग कॉन्टेंट वाले एक से ज़्यादा कंपोज़ेबल में बदलाव करना है?
- हां:
- हां: क्या इसमें सामान्य SVG हैं? उदाहरण के लिए, माइक्रो-ऐनिमेशन वाला आइकॉन
इस डायग्राम का PDF वर्शन डाउनलोड करें.