1、布局文件中添加ImageView

<ImageView
android:id="@+id/iv_fan"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/f1" />

//注意:如果不是手写的代码,即拖动进布局的ImageView需要修改android:src   改成android:background,否则无法播放!

2、res文件夹下添加anim文件夹,用来存放<animation-list>

  在anim文件夹下创建一个名称为fan_list的xml文件

  右键anim文件夹->new->Android XML File进入选择界面

  Resource Type: 选择Drawable

  Project: 自己的工程目录,通常情况下程序自己已经匹配好了,不用配置

  File:   xml文件的名称

  Root Element:  选择Animation-list

  选择Finish 完成创建

3、创建完成文件会出现在Drawable文件夹下,没关系,复制粘贴到anim文件夹下即可

  编辑xml文件,创建好的xml文件通常只带有一个头文件和一个标签

<?xml version="1.0" encoding="utf-8"?>
<animation-list xmlns:android="http://schemas.android.com/apk/res/android" >

//在此处填写数据
</animation-list>

  填写数据的时候,android不会给出提示,所以需要记住

  fan_list文件内容如下:

  <?xml version="1.0" encoding="utf-8"?>
  <animation-list xmlns:android="http://schemas.android.com/apk/res/android" >

  <item
  android:drawable="@drawable/f1"
  android:duration="100"/>
  <item
  android:drawable="@drawable/f2"
  android:duration="100"/>
  <item
  android:drawable="@drawable/f3"
  android:duration="100"/>
  <item
  android:drawable="@drawable/f4"
  android:duration="100"/>
  <item
  android:drawable="@drawable/f5"
  android:duration="100"/>
  <item
  android:drawable="@drawable/f6"
  android:duration="100"/>
  <item
  android:drawable="@drawable/f7"
  android:duration="100"/>
  <item
android:drawable="@drawable/f8"
android:duration="100"/>

</animation-list>

    其中android:drawable是需要播放的图片数据,程序播放的时候会从上到下依次播放

    android:duration 持续时间,每张图片显示的时间,单位是ms

    这两个属性必须填写,不然无法播放

4、在程序中引用

public void InitView(){

  iv_fan = (ImageView) findViewById(R.id.imageView1);//实例化控件
  iv_fan.setBackgroundResource(R.anim.fan_list);//设置播放数据
  final AnimationDrawable anim = (AnimationDrawable) iv_fan//使用AnimationDrawable控制数据的播放和暂停
  .getBackground();
  iv_fan.setOnClickListener(new OnClickListener() {

  @Override
  public void onClick(View v) {

      anim.setOneShot(true);//设置只播放一次,false无限循环播放
      anim.start();//播放

    }
  });

}

Android播放图片动画的更多相关文章

  1. Android 播放Gif 动画

    在Android 中是不支持直接使用Gif 图片关联播放帧动画,如下动画在Android 中是无法播放的: Android 提供了另外一种解决的办法,就是使用AnimationDrawable 这一函 ...

  2. Android播放gif动画,增加屏幕掉金币效果

    前言:播放gif的版本有很多,我这边使用Android自带的Movie类播放gif动画,也是在别人的基础上进行修改.有同样需求的朋友可以参考我的demo. 1.效果图如下: 2.部分主要代码 Main ...

  3. Swift开发教程--怎样播放图片动画

    废话少说,直接上代码: var barsAnim = UIImageView(frame: self.view.frame); barsAnim.animationImages = NSArray() ...

  4. Android学习笔记进阶十一图片动画播放(AnimationDrawable)

    大家平时见到的最多的可能就是Frame动画了,Android中当然也少不了它.它的使用更加简单,只需要创建一个 AnimationDrawabledF对象来表示Frame动画,然后通过addFrame ...

  5. android 通过帧动画方式播放Gif动画

    注意:经过本人测试,这个方法很耗内存, 图片一多就崩了.慎用 <1>用工具(photoshop或者FireWorks)将GIF动画图片分解成多个GIF静态图片,然后保存在res\drawa ...

  6. Android 播放gif图片

    Android的原生控件并不支持播放GIF格式的图片.我们都知道,在Android中如果想要显示一张图片,可以借助ImageView控件来完成,但是如果将一张GIF图片设置到ImageView里,它只 ...

  7. Android实现播放GIF动画的强大ImageView

    我个人是比较喜欢逛贴吧的,贴吧里总是会有很多搞笑的动态图片,经常看一看就会感觉欢乐很多,可以释放掉不少平时的压力.确实,比起一张单调的图片,动态图片明显更加的有意思.一般动态图片都是GIF格式的,浏览 ...

  8. Android高级控件(二)——SurfaceView实现GIF动画架包,播放GIF动画,自己实现功能的初体现

    Android高级控件(二)--SurfaceView实现GIF动画架包,播放GIF动画,自己实现功能的初体现 写这个的原因呢,也是因为项目中用到了gif动画,虽然网上有很多的架包可以实现,不过我们还 ...

  9. android 拓展ImageView播放GIF动画

    原生Android控件ImageView并不能支持播放GiF格式的图片.如果将一张GIF的图片放入ImageView中,它只会显示图片的第一帧,不会产生任何动画效果. Android中播放GIF动画实 ...

随机推荐

  1. AIDL通信过程中设置死亡代理

    关于AIDL的使用参考学习: https://blog.csdn.net/u011240877/article/details/72765136 https://blog.csdn.net/iromk ...

  2. OsWatcher 使用详解

    软件下载地址: https://support.oracle.com/epmos/faces/DocumentDisplay?_afrLoop=520996062954556&id=30113 ...

  3. input[type=file]上传文件(格式判断、文件大小、上传成功后操作)

    var isUploadImg = false; //在input file内容改变的时候触发事件******************上传图片 $('#filed').change(function( ...

  4. linux批量替换文件内容3种方法(perl,sed,shell)

    方法1:perl   这两天在构建一个应用的使用用到了maven,由于project很大,足足有700多个 pom.xml文件,更郁闷的是在很多pom.xml文件里都单独指定了资源库的url,我需要把 ...

  5. HashMap多线程put后get为null和多线程put的时候可能导致元素丢失

    一.多线程put后get为null 源码定位 void transfer(Entry[] newTable) { Entry[] src = table; int newCapacity = newT ...

  6. mysql alter 效率

    2017年9月15日 10:36:54 星期五 今天遇到一个效率问题记下来: 场景: mysql要更改一下表字段的注释, 因为sql语句问题, 导致更新了整张表.. 错误: ) UNSIGNED ' ...

  7. python 基础 01

    什么是计算机? cpu: 计算机的大脑; 读写速度 3GHZ 内存: (为了提高利用率) 缓冲硬盘和cpu 硬盘: 机械硬盘读写速度70mb/s 计算机里面读写的内容都是01代码 二进制(计算机只认二 ...

  8. Laravel 5.2--git冲突error: Your local changes to the following files would be overwritten by merge:

    今天在服务器上git pull是出现以下错误: error: Your local changes to the following files would be overwritten by mer ...

  9. python PIL实现图片合成

    在项目中需要将两张图片合在一起.遇到两种情况,一种就是两张非透明图片的合成, 一种是涉及到透明png的合成. 相关API见 http://pillow.readthedocs.io/en/latest ...

  10. HomeBrew 安转beta版软件

    今天想装测试版的cocoapods,用 brew install cocoapods 后,总是安装稳定版,就是1.1.0,不是最新的beta版,发现用下面这个命令可以装最新beta版 brew ins ...