कोई ऐनिमेशन एपीआई चुनें

इस डायग्राम से आपको यह तय करने में मदद मिलेगी कि ऐनिमेशन लागू करने के लिए, किस एपीआई का इस्तेमाल किया जाए.

सही ऐनिमेशन एपीआई चुनने के लिए, डिसीज़न ट्री के बारे में बताने वाला फ़्लोचार्ट
पहली इमेज. सही ऐनिमेशन एपीआई चुनने का तरीका बताने वाला डिसिज़न ट्री.

सही ऐनिमेशन एपीआई चुनने के लिए, डिसीज़न ट्री के बारे में बताने वाला फ़्लोचार्ट

अपने इस्तेमाल के उदाहरण के लिए सबसे सही ऐनिमेशन एपीआई चुनने के लिए, इस फ़्लोचार्ट का इस्तेमाल करें:

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

डायग्राम का PDF वर्शन डाउनलोड करें.