Указывает местоположение и атрибуты для видов в ходе последовательности движений. По умолчанию движение продолжается от начального состояния к конечному состоянию. Используя <KeyFrameSet> , вы можете создавать более сложные движения.
<KeyFrameSet> содержит узлы <KeyPosition> или <KeyAttribute> . Эти узлы определяют положение или атрибуты целевого вида в определенной точке движения. MotionLayout плавно анимирует вид от начальной точки до каждой промежуточной точки, а затем до конечного пункта назначения.
Предположим, что в начальном состоянии последовательности движений есть непрозрачный шар в левом нижнем углу изображения, а в конечном состоянии шар становится прозрачным в правом верхнем углу. По умолчанию MotionLayout плавно перемещает мяч по диагональной линии, постепенно становясь прозрачным, пока не исчезнет, когда достигнет места назначения. Используя <KeyFrameSet> , вы можете изменить это поведение. Например, вы можете заставить шар двигаться вертикально в верхний левый угол, оставаясь при этом полностью непрозрачным, а затем перемещаться горизонтально в верхний правый угол, постепенно исчезая. Это можно сделать, создав <KeyFrameSet> и добавив в него <KeyPosition> и <KeyAttribute> . <KeyPosition> указывает промежуточное положение мяча, а <KeyAttribute> указывает, что мяч остается непрозрачным в средней точке движения.
Синтаксис
<KeyFrameSet> [ <KeyPosition/>... ] [ <KeyAttribute/>...] </KeyFrameSet>
Содержится в
Содержит
-
<KeyPosition> - Указывает положение вида в определенный момент последовательности движений.
-
<KeyAttribute> - Определяет атрибуты просмотра в определенный момент последовательности движений.