MotionLayout 以编程方式跳转到结束 ConstraintSet
MotionLayout jump to end ConstraintSet programmatically
有一个选项可以跳转到 XML in MotionLayout
的结尾 ConstraintSet
。
<Transition
app:autoTransition="jumpToEnd"
motion:constraintSetEnd="@+id/constraintStart"
motion:constraintSetStart="@+id/constraintEnd"
motion:duration="300" />
这可以通过编程方式完成吗?
我明白了。为了跳转到 ConstraintSet
,请将 MotionLayout
的进度设置为 1。
motionLayout?.setProgress(1.0f)
当你有多个转换时,然后将 MotionLayout
的状态设置为最终 ConstraintSet
然后将进度设置为 1。
motionLayout?.setState(R.id.endConstraintSet,ConstraintSet.MATCH_CONSTRAINT,ConstraintSet.MATCH_CONSTRAINT)
motionLayout?.setProgress(1.0f)
使用MotionLayout
的transitionToEnd()
方法
使用setProgress to 1f方法确实生效了,但是我在TransitionListener中收不到onTransitionCompleted事件
有一个选项可以跳转到 XML in MotionLayout
的结尾 ConstraintSet
。
<Transition
app:autoTransition="jumpToEnd"
motion:constraintSetEnd="@+id/constraintStart"
motion:constraintSetStart="@+id/constraintEnd"
motion:duration="300" />
这可以通过编程方式完成吗?
我明白了。为了跳转到 ConstraintSet
,请将 MotionLayout
的进度设置为 1。
motionLayout?.setProgress(1.0f)
当你有多个转换时,然后将 MotionLayout
的状态设置为最终 ConstraintSet
然后将进度设置为 1。
motionLayout?.setState(R.id.endConstraintSet,ConstraintSet.MATCH_CONSTRAINT,ConstraintSet.MATCH_CONSTRAINT)
motionLayout?.setProgress(1.0f)
使用MotionLayout
transitionToEnd()
方法
使用setProgress to 1f方法确实生效了,但是我在TransitionListener中收不到onTransitionCompleted事件