我有一个活动,其中在imageview的顶部有一个imageView,在底部有一个recyclerview。我使用MotionLayout动画化imageView的底部约束到屏幕顶部,并在滚动recyclerview时在屏幕上填充recyclerview。一切正常。但是,我想要的是当recyclerview为空时,我不希望动画发生。基于this文档和this答案,我使用了以下代码:

motionLayout.getTransition(R.id.yourTransition).setEnable(false);


但是,此代码对我不起作用。即使添加此代码,动画仍然会发生。此代码有什么问题?我想念什么吗?

最佳答案

您的代码是正确的。我在constraintlayout:2.0.0-beta3上遇到了同样的问题(降级为beta2没有帮助)。

我找到了解决方法:

motionLayout.setTransition(-1, -1)

10-06 15:39