在android里面能不能使用gif图像?这个问题好像不行,android其实设计的很好,没必要做gif图像。首先我们要知道gif图像是逐帧播放预设的图片,那么在android里面我们可以通过一种转换来实现gif图像。
1. 定义一个cwj_animation.xml 放到res/drawable 目录下,其中定义的属性duration为延时,单位为毫秒,而oneshot属性表示是否仅播放一次,内容为:
1<animation-list android:id="selected" android:oneshot="false">
2<item android:drawable="@drawable/cwj0" android:duration="30"
/>
3<item android:drawable="@drawable/cwj1" android:duration="30"
/>
4<item android:drawable="@drawable/cwj2" android:duration="30"
/>
5<item android:drawable="@drawable/cwj3" android:duration="30"
/>
6<item android:drawable="@drawable/cwj4" android:duration="30"
/>
7<item android:drawable="@drawable/cwj5" android:duration="30"
/>
8</animation-list>
2.在java中调用也很简单
ImageView img = (ImageView)findViewById(R.id.cwj_image); //首先声明一个ImageView对象在xml布局文件中
img.setBackgroundResource(R.drawable.cwj_animation); //我们刚才的animation定义的xml文件
AnimationDrawable frameAnimation = (AnimationDrawable) img.getBackground(); //构造AnimationDrawable对象
frameAnimation.start() //开始播放动画
可以这么理解:cwj_animation.xml就是一张gif图片,之所以要放到drawable里面就是因为这个原因。在java代码中可以直接采用setBackgroundResource来加载该gif资源。这个是android实现gif的一种方式也是最容易理解的一种方式。
分享到:
相关推荐
具体功能: 实现了一个可以同时显示gif和bmp的TextView 不足:由于不同gif显示的频率不一样,所以可能在显示多个不同gif时, 有些gif看起来要比原来慢一些 参考:http://www.41443.com/HTML/Android/20141110/204419.html...
实现TextView 中Gif表情动画功能
android中加载gif图片实现动画效果。
通过一个小程序实现gif动画,需要的可以看看
视频或多张图片转换成GIF图 Android实现
使用android-gif-drawable实现gif的图片加载显示
android textview图文混排支持GIF图 原生方式实现 glide支持
Android应用程序中用来显示gif动态图片,
Android SurfaceView实现加载GIF动画
Android实现Gif动画
android中显示本地或网络GIF图片:通过Movie实现的,网络(Movie .decodeByteArray),本地(Movie.decodeStream)
由于android没有自带的gif动画,有个神人写第三方的库,我改了下代码,实现了gif动画显示,在项目中很有用。
本例子实现android播放gif图片效果,希望对大家有帮助!
用来显示gif格式的图片,实现其 播放,由于android没有显示gif图片的控件
android 仿GIF 制作动画特效 代码实现 动态加载SD卡图片
github最新android-gif-drawable资源so; android-async-http-1.4.5.jar demo中实现了本地gif显示和网络加载gif显示
Android 播放Gif图片动画【源代码】,在Android 中是不支持直接使用Gif 图片关联播放帧动画,Android 提供了另外一种解决的办法,就是使用AnimationDrawable 这一函数使其支持逐帧播放,我们使用一款动画分割软件...
Android GIf动画连续播放 GIf动画引擎的简单实现
做项目时发现miui 4.4上对透明的gif图片解析有问题,成为黑色一块,android中常用的有两种gif库,一种是java实现,一种是C实现。此库是C实现的方式。编译过了so文件,可以当lib直接使用。
使用android-gif-drawable实现gif的加载显示