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