اختيار واجهة برمجة تطبيقات للصور المتحركة

يساعدك المخطّط البياني أدناه في تحديد واجهة برمجة التطبيقات التي تريد استخدامها لتنفيذ الصورة المتحركة.

مخطط انسيابي يصف شجرة القرار لاختيار الصورة المتحركة المناسبة
واجهة برمجة التطبيقات

الشكل 1. شجرة القرار التي تصف كيفية اختيار واجهة برمجة التطبيقات المناسبة للصور المتحركة

اتّبِع أسئلة شجرة القرارات أدناه لاختيار واجهة برمجة تطبيقات الصور المتحركة الأنسب لحالة الاستخدام لديك:

  • هل الصورة المتحركة تشبه العمل الفني، وتتكون من العديد من العناصر المرئية؟ مثلاً، ملفات SVG أو صور؟
    • نعم: هل تحتوي على ملفات SVG بسيطة؟ أي رمز يتضمّن رسومًا متحركة دقيقة
    • لا: هل يجب تكرار الإجراء إلى الأبد؟
      • نعم: rememberInfiniteTransition
      • لا: هل هذا تأثير متحرك للتخطيط؟
        • نعم: هل يمكنك التبديل بين تصاميم متعددة تتضمّن محتوًى مختلفًا؟
          • نعم: باستخدام ميزة التنقّل-الإنشاء؟
          • لا: هل تريد تحريك المظهر / الاختفاء؟
            • نعم: AnimatedVisibility أو animateFloatAsState مع Modifier.alpha()
            • لا: هل تريد تحريك الحجم؟
              • نعم: Modifier.animateContentSize
              • لا: هل هناك سمة أخرى للتنسيق؟ مثلاً، التوسيع أو الحشو وما إلى ذلك؟
                • نعم: راجِع السؤال "هل المواقع مستقلة تمامًا عن بعضها البعض؟"
                • لا: هل تريد إضافة صور متحركة لعناصر القائمة؟
                  • نعم: animateItemPlacement() (ستتوفّر ميزة إعادة الترتيب والحذف قريبًا)
        • لا: هل تحتاج إلى إضافة تأثيرات متحركة إلى مواقع متعددة؟
          • نعم: هل المواقع مستقلة تمامًا عن بعضها البعض؟
            • نعم: animate*AsState، للنص، استخدِم TextMotion.Animated
            • لا: هل تريد البدء في الوقت نفسه؟
              • نعم: نعم: updateTransition مع AnimatedVisibility وanimateFloat وanimateInt وما إلى ذلك
              • لا: يتم استدعاء الدالة Animatable مع animateTo في أوقات مختلفة (باستخدام دوال التعليق)
          • لا: هل تتضمّن الصورة المتحركة مجموعة من القيم المستهدَفة المحدّدة مسبقًا؟
            • نعم: animate*AsState، بالنسبة إلى النصوص، استخدِم TextMotion.Animated
            • لا: هل هناك صور متحركة مستندة إلى الإيماءات؟ هل الصورة المتحركة هي مصدر الحقيقة الوحيد؟
              • نعم: Animatable مع animateTo / snapTo
              • لا: هل المؤثر المتحرّك عبارة عن لقطة واحدة بدون إدارة الحالات؟

نزِّل نسخة PDF من الرسم البياني.