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