<KeyFrameSet>

ระบุตำแหน่งและแอตทริบิวต์สำหรับการดูตลอดการเคลื่อนไหว ตามลำดับ โดยค่าเริ่มต้น การเคลื่อนไหวจะเปลี่ยนจากสถานะเริ่มต้นเป็นสถานะสิ้นสุด ด้วยการใช้ <KeyFrameSet> คุณสามารถสร้างการเคลื่อนไหวที่ซับซ้อนมากขึ้น

<KeyFrameSet> ประกอบด้วย <KeyPosition> หรือ <KeyAttribute> โหนดเหล่านี้ระบุตำแหน่งหรือแอตทริบิวต์ของมุมมองเป้าหมายที่ จุดใดจุดหนึ่งในการเคลื่อนไหว MotionLayout ค่อยๆ เคลื่อนไหวมุมมองจากจุดเริ่มต้นไปยังจุดกึ่งกลางแต่ละจุด แล้วถึงจุดหมายสุดท้าย

สมมติว่าสถานะเริ่มต้นของลำดับการเคลื่อนที่มีลูกบอลสีทึบใน มุมซ้ายล่างของมุมมอง และสถานะสุดท้ายจะทำให้ลูกบอลโปร่งใส ที่มุมบนขวา โดยค่าเริ่มต้น MotionLayout จะขยับลูกบอลอย่างราบรื่น เป็นเส้นทแยงมุม ค่อยๆ โปร่งใสจนหายไปเมื่อ จะถึงจุดหมาย คุณเปลี่ยนลักษณะการทำงานนี้ได้เมื่อใช้ <KeyFrameSet> ตัวอย่างเช่น คุณสามารถทำให้ลูกบอลเคลื่อนที่ไปที่มุมซ้ายบนในแนวตั้งได้ ขณะที่ยังคงทึบแสงทั้งหมด แล้วเลื่อนในแนวนอนไปด้านบนขวา ที่มุมเมื่อค่อยๆ หายไป ซึ่งทำได้โดยการสร้าง <KeyFrameSet> และ เพิ่ม <KeyPosition> และ <KeyAttribute> ไว้ภายใน <KeyPosition> ระบุตำแหน่งตรงกลางของลูกบอล และ<KeyAttribute> ระบุว่าลูกบอลยังคงทึบแสง ณ จุดกึ่งกลางของการเคลื่อนไหว

วากยสัมพันธ์

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

มีใน

<Transition>

ประกอบด้วย

<KeyPosition>
ระบุตำแหน่งของมุมมอง ณ ช่วงเวลาที่เฉพาะเจาะจงระหว่างลำดับการเคลื่อนไหว
<KeyAttribute>
ระบุแอตทริบิวต์มุมมอง ณ ช่วงเวลาที่เฉพาะเจาะจงระหว่างลำดับการเคลื่อนไหว