如何将MotionLayout重置为第一个"约束集"



我使用的ViewPager有3个页面。重新选择页面时,如何重置MotionLayout并重新运行动画?

目前,当一个页面被另一个页面替换时,我调用方法transitionToStart()。但如果用户向后滑动过快,动画transitionToStart()将无法完成。

有更好的方法吗?

您可以执行以下操作:

motionLayout.setTransition(R.id.transition);
motionLayout.transitionToEnd();
if (instant)
motionLayout.setProgress(1);

您可以通过调用.setProgress(0).setProgress(1)手动设置进度

基于.setTransition(R.id.transition),您可以定义开始约束和结束约束(如果您有两个以上的约束集(。

最新更新