Android播放图片动画
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播放图片动画的更多相关文章
- Android 播放Gif 动画
在Android 中是不支持直接使用Gif 图片关联播放帧动画,如下动画在Android 中是无法播放的: Android 提供了另外一种解决的办法,就是使用AnimationDrawable 这一函 ...
- Android播放gif动画,增加屏幕掉金币效果
前言:播放gif的版本有很多,我这边使用Android自带的Movie类播放gif动画,也是在别人的基础上进行修改.有同样需求的朋友可以参考我的demo. 1.效果图如下: 2.部分主要代码 Main ...
- Swift开发教程--怎样播放图片动画
废话少说,直接上代码: var barsAnim = UIImageView(frame: self.view.frame); barsAnim.animationImages = NSArray() ...
- Android学习笔记进阶十一图片动画播放(AnimationDrawable)
大家平时见到的最多的可能就是Frame动画了,Android中当然也少不了它.它的使用更加简单,只需要创建一个 AnimationDrawabledF对象来表示Frame动画,然后通过addFrame ...
- android 通过帧动画方式播放Gif动画
注意:经过本人测试,这个方法很耗内存, 图片一多就崩了.慎用 <1>用工具(photoshop或者FireWorks)将GIF动画图片分解成多个GIF静态图片,然后保存在res\drawa ...
- Android 播放gif图片
Android的原生控件并不支持播放GIF格式的图片.我们都知道,在Android中如果想要显示一张图片,可以借助ImageView控件来完成,但是如果将一张GIF图片设置到ImageView里,它只 ...
- Android实现播放GIF动画的强大ImageView
我个人是比较喜欢逛贴吧的,贴吧里总是会有很多搞笑的动态图片,经常看一看就会感觉欢乐很多,可以释放掉不少平时的压力.确实,比起一张单调的图片,动态图片明显更加的有意思.一般动态图片都是GIF格式的,浏览 ...
- Android高级控件(二)——SurfaceView实现GIF动画架包,播放GIF动画,自己实现功能的初体现
Android高级控件(二)--SurfaceView实现GIF动画架包,播放GIF动画,自己实现功能的初体现 写这个的原因呢,也是因为项目中用到了gif动画,虽然网上有很多的架包可以实现,不过我们还 ...
- android 拓展ImageView播放GIF动画
原生Android控件ImageView并不能支持播放GiF格式的图片.如果将一张GIF的图片放入ImageView中,它只会显示图片的第一帧,不会产生任何动画效果. Android中播放GIF动画实 ...
随机推荐
- Css - 利于搜索引擎收录的三个标签
Css - 利于搜索引擎收录的三个标签 <head> <meta charset="utf-8" /> <title>京东(JD.COM)-正品 ...
- Netty源码学习笔记
1.ByteBuf
- C++以const 作为返回值类型的意义
const rational operator*(const rational& lhs, const rational& rhs); 很多程序员第一眼看到它会纳闷:为什么operat ...
- Android AlertDialog 绝对位置计算
public class Main2Activity extends AppCompatActivity { @Override protected void onCreate(Bundle save ...
- SHA1算法原理【转】
转自:https://www.cnblogs.com/scu-cjx/p/6878853.html 一.SHA1与MD5差异 SHA1对任意长度明文的预处理和MD5的过程是一样的,即预处理完后的明文长 ...
- delphi 的插件机制与自动更新
delphi 的插件机制与自动更新 : 1.https://download.csdn.net/download/cxp_2008/2226978 参考 2.https://download.cs ...
- xtrabackup
mysqldump备份方式是采用逻辑备份,其最大的缺陷就是备份和恢复速度都慢,对于一个小于50G的数据库而言,这个速度还是能接受的,但如果数据库非常大,那再使用mysqldump备份就不太适合了.而使 ...
- 持续集成之④:GitLab触发jenkins构建项目
持续集成之④:GitLab触发jenkins构建项目 一:目的为在公司的测试环境当中一旦开发向gitlab仓库提交成功代码,gitlab通知jenkins进行构建项目.代码质量测试然后部署至测试环境, ...
- python学习第天14天。
模块 什么是模块 常见的场景:一个模块就是一个包含了python定义和声明的文件,文件名就是模块名字加上.py的后缀. 但其实import加载的模块分为四个通用类别: 1 使用python编写的代码( ...
- 洛谷P4336 [SHOI2016]黑暗前的幻想乡 [Matrix-Tree定理,容斥]
传送门 思路 首先看到生成树计数,想到Matrix-Tree定理. 然而,这题显然是不能Matrix-Tree定理硬上的,因为还有每个公司只能建一条路的限制.这个限制比较恶心,尝试去除它. 怎么除掉它 ...