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

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

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

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

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

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

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