<KeyFrameSet>
با مجموعهها، منظم بمانید
ذخیره و طبقهبندی محتوا براساس اولویتهای شما.
مکان و ویژگی های نماها را در طول توالی حرکت مشخص می کند. به طور پیش فرض، حرکت از حالت اولیه به حالت پایانی ادامه می یابد. با استفاده از <KeyFrameSet>
، می توانید حرکات پیچیده تری بسازید.
<KeyFrameSet>
حاوی گره های <KeyPosition>
یا <KeyAttribute>
است. این گره ها موقعیت یا ویژگی های نمای هدف را در نقطه خاصی از حرکت مشخص می کنند. MotionLayout
به آرامی منظره را از نقطه شروع به هر نقطه میانی و سپس به مقصد نهایی متحرک می کند.
فرض کنید حالت اولیه دنباله حرکت دارای یک توپ مات در گوشه پایین سمت چپ نمای است و حالت نهایی توپ را در گوشه سمت راست بالا شفاف می کند. به طور پیش فرض، MotionLayout
توپ را به آرامی در یک خط مورب حرکت می دهد، به تدریج شفاف می شود تا زمانی که به مقصد برسد ناپدید شود. با استفاده از <KeyFrameSet>
، می توانید این رفتار را تغییر دهید. به عنوان مثال، می توانید کاری کنید که توپ به صورت عمودی به گوشه سمت چپ بالا حرکت کند در حالی که کاملاً مات باقی بماند، سپس به صورت افقی به گوشه بالا سمت راست حرکت کنید در حالی که محو می شود. می توانید این کار را با ایجاد یک <KeyFrameSet>
و افزودن <KeyPosition>
و <KeyAttribute>
داخل آن انجام دهید. <KeyPosition>
مکان میانی توپ را مشخص می کند و <KeyAttribute>
مشخص می کند که توپ در نقطه میانی حرکت مات می ماند.
نحو
<KeyFrameSet>
[ <KeyPosition/>... ]
[ <KeyAttribute/>...]
</KeyFrameSet>
موجود در
<Transition>
حاوی
-
<KeyPosition>
- موقعیت یک نما را در یک لحظه خاص در طول دنباله حرکت مشخص می کند.
-
<KeyAttribute>
- ویژگی های view را در یک لحظه خاص در طول دنباله حرکت مشخص می کند.
محتوا و نمونه کدها در این صفحه مشمول پروانههای توصیفشده در پروانه محتوا هستند. جاوا و OpenJDK علامتهای تجاری یا علامتهای تجاری ثبتشده Oracle و/یا وابستههای آن هستند.
تاریخ آخرین بهروزرسانی 2025-07-29 بهوقت ساعت هماهنگ جهانی.
[[["درک آسان","easyToUnderstand","thumb-up"],["مشکلم را برطرف کرد","solvedMyProblem","thumb-up"],["غیره","otherUp","thumb-up"]],[["اطلاعاتی که نیاز دارم وجود ندارد","missingTheInformationINeed","thumb-down"],["بیشازحد پیچیده/ مراحل بسیار زیاد","tooComplicatedTooManySteps","thumb-down"],["قدیمی","outOfDate","thumb-down"],["مشکل ترجمه","translationIssue","thumb-down"],["مشکل کد / نمونهها","samplesCodeIssue","thumb-down"],["غیره","otherDown","thumb-down"]],["تاریخ آخرین بهروزرسانی 2025-07-29 بهوقت ساعت هماهنگ جهانی."],[],[],null,["# <KeyFrameSet>\n\nSpecifies location and attributes for views over the course of the motion\nsequence. By default, motion proceeds from the initial state to the end state.\nBy using `\u003cKeyFrameSet\u003e`, you can build more complex motions.\n\nThe `\u003cKeyFrameSet\u003e` contains\n[`\u003cKeyPosition\u003e`](/training/constraint-layout/motionlayout/ref/keyposition) or\n[`\u003cKeyAttribute\u003e`](/training/constraint-layout/motionlayout/ref/keyattribute)\nnodes. These nodes specify the position or attributes of a target view at a\nspecific point in the motion.\n[`MotionLayout`](/reference/androidx/constraintlayout/motion/widget/MotionLayout)\nsmoothly animates the view from the starting point to each intermediate point\nand then to the final destination.\n\nSuppose the initial state of the motion sequence has an opaque ball in the\nlower-left corner of the view, and the final state makes the ball transparent in\nthe upper-right corner. By default, the `MotionLayout` moves the ball smoothly\nin a diagonal line, gradually becoming transparent until it vanishes when it\nreaches its destination. By using `\u003cKeyFrameSet\u003e`, you can change this behavior.\nFor example, you can make the ball move vertically to the upper-left corner\nwhile remaining entirely opaque, then move horizontally to the upper-right\ncorner while fading out. You can do this by creating a `\u003cKeyFrameSet\u003e` and\nadding a `\u003cKeyPosition\u003e` and `\u003cKeyAttribute\u003e` inside it. The `\u003cKeyPosition\u003e`\nspecifies the intermediate location of the ball, and the `\u003cKeyAttribute\u003e`\nspecifies that the ball remains opaque at the midpoint of the motion.\n\nSyntax\n------\n\n```xml\n\u003cKeyFrameSet\u003e\n [ \u003cKeyPosition/\u003e... ]\n [ \u003cKeyAttribute/\u003e...]\n\u003c/KeyFrameSet\u003e\n```\n\nContained in\n------------\n\n[`\u003cTransition\u003e`](/training/constraint-layout/motionlayout/ref/transition)\n\nContains\n--------\n\n[`\u003cKeyPosition\u003e`](/training/constraint-layout/motionlayout/ref/keyposition)\n: Specifies a view's position at a specific moment during the motion sequence.\n\n[`\u003cKeyAttribute\u003e`](/training/constraint-layout/motionlayout/ref/keyattribute)\n: Specifies view attributes at a specific moment during the motion sequence."]]