gpt4 book ai didi

android - android 中的 clearAnimation() 和 stop() 有什么区别?

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:40:17 24 4
gpt4 key购买 nike

当我完成我的 Activity 时,我应该对任何剩余的 AnimationDrawable 对象使用 clearAnimation() 还是 stop()

最佳答案

stop() 停止动画,仅此而已。由于 stop() 是 AnimationDrawable.class 的方法,您可以在想要停止 AnimationDrawable 的动画时使用它,但不能在任何 View 上使用。

clearAnimation()View.class 的方法。它将停止 View 的动画,另外:

  • 如果定义了AnimationListener,将调用AnimationListener.onAnimationEnd(Animation animation)

  • 如果有 Handler 定义,Handler.postAtFrontOfQueue(Runnable r) 将被调用。

这是调用层次结构:View.clearAnimation() -> Animation.detach() -> Animation.fireAnimationEnd()fireAnimationEnd()方法:

private void fireAnimationEnd() {
if (mListener != null) {
if (mListenerHandler == null) mListener.onAnimationEnd(this);
else mListenerHandler.postAtFrontOfQueue(mOnEnd);
}
}

关于android - android 中的 clearAnimation() 和 stop() 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9392094/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com