运动场景文件的根元素。<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 毫秒。