MsP*_*121 5 android android-animation android-recyclerview android-constraintlayout android-motionlayout
我有一些项目包装在 MotionLayout 和 recyclerView 中,其中需要将一项设置为“结束”状态,并将其余项目保留在“开始”状态,没有任何动画或闪烁,只需显示。

当我尝试打电话时
transitionToState(endState)
Run Code Online (Sandbox Code Playgroud)
或者
transitionToEnd()
Run Code Online (Sandbox Code Playgroud)
动画发生了,但我只需要第一次将元素设置为结束状态。当用户单击项目时,所有内容都应该有动画
小智 7
您可以通过执行以下操作转换到不带动画的 MotionLayout 的最终状态:
yourMotionLayout.setTransitionDuration(0)
yourMotionLayout.transitionToEnd()
Run Code Online (Sandbox Code Playgroud)
您可以将其包装到扩展函数中以便于重用:
/**
* Triggers the underlying [MotionLayout] to transition to end state immediately.
*/
fun MotionLayout.jumpToEnd() {
this.setTransitionDuration(0)
this.transitionToEnd()
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1530 次 |
| 最近记录: |