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