stop()
останавливает анимацию и все. Поскольку stop () является методом AnimationDrawable.class
, вы можете использовать его, когда хотите остановить анимацию AnimationDrawable
, но не в любом представлении.
clearAnimation()
- это метод View.class
. Это остановит анимацию просмотра и дополнительно:
Если определено 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);
}
}