【BUG系列】Android 帧动画第二次不播放
Android 帧动画第二次就不动了,也是奇怪的很。
帧动画的具体使用这里就不介绍了,能遇到问题的,肯定都是已经知道怎么用了。
一般用法:
animationIV.setImageResource(R.drawable.animation1); // animation-list 的 .xml
animationDrawable = (AnimationDrawable) animationIV.getDrawable();
animationDrawable.start();
一般都是这么用的。
但是在 HTC_D820ys 和 努比亚Z9 mini NX511J 手机上,第一次可以动,但是第二次就不动了。原因未知。
改法就是换了一种获取动画图片的方式,如下:
animationIV.clearAnimation();
animationDrawable = (AnimationDrawable) getResources().getDrawable(R.drawable.link_btn_anim);
animationIV.setImageDrawable(animationDrawable);
animationDrawable.start();
这样就可以正常播放动画了。
推测原因:
- 在某些机型上 每个 View 上面的 getDrawable() 帧动画只能 start() 一次,所以每次进来要把动画重新获取一遍。
- 也可能是因为在某些机型上 animationIV.getDrawable() 这个方法只能获取最后一帧的图片,意思就是动画播放完了。
- 感谢你赐予我前进的力量
赞赏者名单
因为你们的支持让我意识到写文章的价值🙏
本文是原创文章,采用 CC BY-NC-ND 4.0 协议,完整转载请注明来自 时光·李记
评论
匿名评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果