מציין את המיקום והמאפיינים של התצוגות במהלך רצף התנועה. כברירת מחדל, התנועה מתקדמת מהמצב הראשוני למצב הסופי.
בעזרת <KeyFrameSet>
אפשר ליצור תנועות מורכבות יותר.
השדה <KeyFrameSet>
מכיל צמתים מסוג <KeyPosition>
או <KeyAttribute>
. הצמתים האלה מציינים את המיקום או המאפיינים של תצוגת היעד בנקודה ספציפית בתנועה.
MotionLayout
מפעילה אנימציה חלקה של התצוגה מנקודת ההתחלה לכל נקודת ביניים ואז ליעד הסופי.
נניח שבמצב ההתחלתי של רצף התנועה יש כדור אטום בפינה הימנית התחתונה של התצוגה, ובמצב הסופי הכדור שקוף בפינה השמאלית העליונה. כברירת מחדל, הלחצן MotionLayout
מזיז את הכדור בצורה חלקה בקו אלכסוני, והוא הופך בהדרגה לשקוף עד שהוא נעלם כשמגיע ליעד. אפשר לשנות את ההתנהגות הזו באמצעות <KeyFrameSet>
.
לדוגמה, אפשר להזיז את הכדור אנכית לפינה הימנית העליונה תוך שמירה על אטימות מלאה, ואז להזיז אותו אופקית לפינה הימנית העליונה תוך כדי העלמה. כדי לעשות זאת, יוצרים <KeyFrameSet>
ומוסיפים אליו <KeyPosition>
ו-<KeyAttribute>
. השדה <KeyPosition>
מציין את המיקום הביניים של הכדור, והשדה <KeyAttribute>
מציין שהכדור נשאר אטום בנקודת האמצע של התנועה.
תחביר
<KeyFrameSet> [ <KeyPosition/>... ] [ <KeyAttribute/>...] </KeyFrameSet>
נמצא בתוך
השירים הכלולים
<KeyPosition>
- מציין את המיקום של תצוגה ברגע ספציפי במהלך רצף התנועה.
<KeyAttribute>
- מציין מאפייני תצוגה ברגע ספציפי במהלך רצף התנועה.