关键帧动画:
任何动画要表现运动或变化,至少前后要给出两个不同的关键状态,而中间状态的变化和衔接电脑可以自动完成,在Flash中,表示关键状态的帧动画叫做关键帧动画
Constraint 可以配合 ConstraintLayout 实现关键帧动画,只需要给出
“动画前的xml”、“动画后的xml”、“插值器”就可以开始动画。
val constraintSet1 = ConstraintSet() constraintSet1.clone(rootView2)//拷贝一份 rootView2 作为“动画结束模板”;rootVie2: 动画结束时的 xml 文件 //constraintSet1.clone(baseContext,R.layout.activity_main2)//也可以这么clone TransitionManager.beginDelayedTransition(rootView)//设置动画插值器 constraintSet1.applyTo(rootView)//应用到 此View = 让view 执行动画;rootView: 此 Activity 的根 View
注意:这并不是假的,类似属性动画那样,rootView的控件位置真正的改变了。
如果要反向执行动画,不能直接用 constraintSet.clone(rootView),因为rootView的布局已经改变了,执行起来是不会有任何变化的(亲测)。必须在布局改变之前 clone(rootView) 来拷贝开始位置的模板。
还不知道如何监听动画结束