【问题标题】:How to know the animation has been finished when called reverse() in Android在Android中调用reverse()时如何知道动画已经完成
【发布时间】:2015-08-18 11:13:11
【问题描述】:

我创建了一个 ValueAnimation,如下所示:

<objectAnimator xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="@integer/animation_duration"
android:interpolator="@android:anim/decelerate_interpolator"
android:propertyName="alpha"
android:valueFrom="1.0f"
android:valueTo="0.0f" />    

然后,我创建了一个自定义视图,并使用以下代码:

Animation animation = AnimatorInflater.loadAnimator(mContext, R.animator.miss);
animation.setTarget(this);

我使用 start() 让动画开始,但在某些情况下,我想使用 reverse() 让开始反向动画。 我知道,当调用 start() 时,我们可以使用 AnimatorListener 并覆盖 onAnimationEnd() 来知道动画已经完成。 那么,当我调用 animation.reverse() 时,我怎么知道反向动画完成了?

非常感谢您的帮助。

【问题讨论】:

    标签: android animation


    【解决方案1】:

    这个方法还没试过,但可能是解决办法:

    http://developer.android.com/reference/android/view/View.html#onAnimationEnd()

    【讨论】:

    • 感谢您的帮助,但我只是在客户视图中创建一个动画师作为成员。你说的动画没有reverse()。