标准的Drawable动画,是用imageView.setBackgroundResource设置动画文件,然后通过(AnimationDrawable)imageView.getBackground()获取动画句柄,start()启动动画。
我现在做的程序,图片分静态模式和动画模式两种,静态的时候是通过setImageResource设置图片的,如果动画再使用setBackgroundResource设置,两个图片会出现重叠,所以尝试直接用setImageResource设置动画文件,然后通过(AnimationDrawable)imageView.getDrawable()获取动画句柄。
经过测试,这样是可行的,但是很想知道这两者的区别(毕竟我是非常规做法),会不会带来额外的消耗或者隐患?例如background动画是在子线程内运行,而image动画是在主线程内运行?
求了解Android代码和机制的大拿解惑,谢谢;)