Animation.AnimationListener 和 Animator.AnimatorListener 有什么区别?

What is the difference between Animation.AnimationListener and Animator.AnimatorListener?

我能看到的是,一个 Listener 来自 Animation,另一个来自 Animator,后者(在 API 11 中添加)是最近添加的Android API。在什么情况下应该使用哪个,它们可以互换吗?

所以,两者是:

Animator.AnimatorListener Animation.AnimationListener

Animation 包下的所有内容都用于旧的(蜂巢之前的)视图动画。例如,AlphaAnimationScaleAnimationView.startAnimation()View.clearAnimation() 一起使用。

Animator类是Honeycomb中引入的新动画框架,如ObjectAnimatorValueAnimator

如果您只支持 API 11+,我强烈建议您使用 Animator 而不是 Animation。更容易使用。

listeners的区别在于Animation.AnimationListenerAnimationsub类需要的类型,Animator.AnimatorListener接口是[=17=需要的] ] 子类.

它们不扩展或推动相同的 class 或接口,因此它们不可互换。

Animation.AnimatorListener is used with the old android.view.animation.* animation framework, the other one (Animator.AnimationListener) with the new one android.animation.*