指定运动序列过程中视图的位置和属性。默认情况下,运动会从初始状态进入结束状态。您可以使用 <KeyFrameSet>
构建更复杂的运动。
<KeyFrameSet>
包含 <KeyPosition>
或 <KeyAttribute>
节点。这些节点用于指定目标视图在运动中特定点处的位置或属性。MotionLayout
平滑地将视图从起点移至每个中间点,然后移至最终目的地。
假设运动序列的初始状态在视图的左下角有一个不透明的球,而最终状态会使该球在右上角变为透明。默认情况下,MotionLayout
沿对角线平稳移动球,逐渐变为透明,直到到达目的地时消失。您可以使用 <KeyFrameSet>
更改此行为。例如,您可以让球垂直移动到左上角,同时保持完全不透明,然后水平移动至右上角,同时淡出。为此,您可以创建一个 <KeyFrameSet>
,并在其中添加 <KeyPosition>
和 <KeyAttribute>
。<KeyPosition>
指定球的中间位置,<KeyAttribute>
指定球在运动的中点保持不透明。
语法
<KeyFrameSet> [ <KeyPosition/>... ] [ <KeyAttribute/>...] </KeyFrameSet>
包含于
包含
<KeyPosition>
- 指定视图在运动序列中特定时刻的位置。
<KeyAttribute>
- 指定运动序列中特定时刻的视图属性。