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

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

सही ऐनिमेशन एपीआई चुनने के लिए, फ़ैसला लेने के तरीके को दिखाने वाला फ़्लोचार्ट

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

यह तय करने के लिए कि आपके इस्तेमाल के उदाहरण के लिए कौनसा ऐनिमेशन एपीआई सबसे सही है, नीचे दिए गए फ़ैसले के पेड़ के सवालों का पालन करें:

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

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