对于播放gif,我们的理解就是一帧帧图片每隔一段时间顺序的去展示,今天介绍在ImageView里面显示gif效果的图片集。
首先我们需要用到:AnimationDrawable,顾名思义就是带动画效果的Drawable,它的官方介绍和使用如下:
可以看到这个就是以drawable对象形式实现一帧帧的动画,并可以设置为View的背景。
上面介绍了通过xml和资源实现动画效果,下面我们介绍下代码动态实现:
AnimationDrawable mAD = new AnimationDrawable();
Drawable drawable1 = new BitmapDrawable(bitmap1);
Drawable drawable2 = new BitmapDrawable(bitmap2);
Drawable drawable3 = new BitmapDrawable(bitmap3);
mAD.addFrame(drawable1, 100);
mAD.addFrame(drawable2, 200);
mAD.addFrame(drawable3, 300);
imageView.setBackground(mAD);
mAD.setOneShot(true);
mAD.start();
当然AnimationDrawable还有stop和isRunning方法来做相关状态的判断。