有没有办法监听 Animatable.isRunning 的变化?

Is there a way to listen for Animatable.isRunning changing?

我一直在尝试在 AnimatedVectorDrawable 完成动画后让事情发生,我正在查看 关于 AVDWrapper 的答案,但我有一种直觉有一种更优雅的方式。

即设置一个布尔变化监听器来检查anim.isRunning()是否已经改变。我一直在关注 this question 及其答案,并设置了一个布尔值更改侦听器(与 setBooanim.isRunning() 几乎完全相同)但它不起作用。我在这里理解概念上的错误吗?当 anim.isRunning()true 变为 false 时,观察者模式应在动画结束时触发。还是因为一个动画是时间sensitive/continuous,需要不断轮询,所以这行不通?如果侦听器实现 Runnable 怎么样?

谢谢。

使用自定义 Animatable2.AnimationCallback 并调用 anim.registerAnimationCallback()