在動作序列期間,指定檢視畫面的位置和屬性。根據預設,動畫會從初始狀態開始,並在結束狀態結束。您可以使用 <KeyFrameSet>
建立更複雜的動作。
<KeyFrameSet>
包含 <KeyPosition>
或 <KeyAttribute>
節點。這些節點會在動作的特定點指定目標檢視畫面的屬性或位置。MotionLayout
會從起點到每個中間點,再到最終目的地,流暢地為檢視畫面製作動畫。
假設動畫序列的初始狀態在檢視畫面的左下角有一個不透明的球,而最終狀態則會使球在右上角呈現透明狀態。根據預設,MotionLayout
會以平滑的對角線移動球,並逐漸變得透明,直到球到達目的地並消失為止。您可以使用 <KeyFrameSet>
變更這項行為。舉例來說,您可以讓球以垂直方向移動到左上角,同時保持完全不透明,然後再以水平方向移動到右上角,同時淡出。方法是建立 <KeyFrameSet>
,並在其中加入 <KeyPosition>
和 <KeyAttribute>
。<KeyPosition>
會指定球的中間位置,而 <KeyAttribute>
會指定球在動作中點時保持不透明。
語法
<KeyFrameSet> [ <KeyPosition/>... ] [ <KeyAttribute/>...] </KeyFrameSet>
包含於
包含
<KeyPosition>
- 指定在動作序列中特定時刻的檢視畫面位置。
<KeyAttribute>
- 指定動作序列中特定時刻的檢視畫面屬性。