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

استخدِم شجرة القرارات التالية لاختيار واجهة برمجة التطبيقات الأكثر ملاءمةً للتأثيرات المتحركة في حالة الاستخدام:
- هل الصورة المتحركة مستندة إلى الفن (أي ملفات 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.