运动场景文件的根元素。<MotionScene>
包含一个或多个 <Transition>
元素,每个元素用于定义运动序列的开始和结束状态,以及这两种状态之间的转换。
语法
<MotionScene xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:android="http://schemas.android.com/apk/res/android"> ... </MotionScene>
必须包含
<Transition>
- 指定需要执行的运动序列。如果
<MotionScene>
包含多个<Transition>
元素,MotionLayout
会根据用户的互动选择最合适的<Transition>
。例如,<MotionScene>
可能有四个<Transition>
子元素,每个元素都包含一个<OnSwipe>
,用于供用户向不同方向滑动。当用户在屏幕上滑动时,MotionLayout
会使用适当的<Transition>
以便沿该方向滑动。
可以包含的元素
<ConstraintSet>
- 为一个或多个
<Transition>
节点指定开始或结束状态。<MotionLayout>
不允许有<ConstraintSet>
子元素,因为<Transition>
可指向 XML 布局,而不是指向约束布局集。
属性
defaultDuration
- 所有过渡的默认持续时间(以毫秒为单位)。默认持续时间用于未指定自己的持续时间的运动序列。例如,在设置了
defaultDuration="300"
的情况下,如果所有运动序列都没有明确指定自己的持续时间,则默认持续时间为 300 毫秒。