<KeyFrameSet>

تحدد الموقع والسمات لطرق العرض على مدار تسلسل الحركة. بشكلٍ تلقائي، تنتقل الحركة من الحالة الأولية إلى الحالة النهائية. وباستخدام <KeyFrameSet>، يمكنك إنشاء حركات أكثر تعقيدًا.

يحتوي <KeyFrameSet> على عُقد <KeyPosition> أو <KeyAttribute>. تحدد هذه العقد موضع أو سمات العرض المستهدف في نقطة معينة من الحركة. MotionLayout تُحرّك العرض بسلاسة من نقطة البداية إلى كل نقطة وسيطة ثم إلى الوجهة النهائية.

لنفترض أن الحالة الأولية لتسلسل الحركة تحتوي على كرة مبهمة في الزاوية السفلية اليسرى من العرض، والحالة النهائية تجعل الكرة شفافة في الزاوية العلوية اليمنى. تحرك MotionLayout الكرة تلقائيًا على خط قطري، وتصبح شفافة تدريجيًا إلى أن تختفي عند الوصول إلى وجهتها. وباستخدام <KeyFrameSet>، يمكنك تغيير هذا السلوك. على سبيل المثال، يمكنك جعل الكرة تتحرك عموديًا إلى الزاوية العلوية اليسرى مع الحفاظ على تعتيمها تمامًا، ثم تحريكها أفقيًا إلى الزاوية العلوية اليمنى مع التلاشي. يمكنك إجراء ذلك عن طريق إنشاء <KeyFrameSet> وإضافة <KeyPosition> و<KeyAttribute> بداخله. وتحدّد السمة <KeyPosition> الموضع المتوسط للكرة، بينما تحدّد السمة <KeyAttribute> أنّ الكرة لا تزال غير شفافة عند نقطة منتصف الحركة.

بناء الجملة

<KeyFrameSet>
    [ <KeyPosition/>... ]
    [ <KeyAttribute/>...]
</KeyFrameSet>

مضمنة في

<Transition>

الأغاني المضمّنة

<KeyPosition>
يحدد موضع العرض في لحظة معيّنة أثناء تسلسل الحركة.
<KeyAttribute>
يحدد سمات العرض في لحظة معيّنة أثناء تسلسل الحركة.