Android播放Gif动态图片的几种方式

本文介绍了三种在Android中实现GIF动画的方法:自定义GifView组件、使用GifView的开源jar包以及使用android-gif-drawable开源库。这些方法各有优缺点,如自定义组件简单但可能不适应所有图片,而android-gif-drawable能有效避免内存溢出。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

下面介绍三种方式。

一、自定义GifView组件

简介:

这个自定义的gifview组件核心代码就是读取Gif数据,创建Movie实例,绘制每一帧图片来达到Gif动态效果。这种方式比较直观方便,代码量也少,不过经测试部分Gif图片不能自适应大小,播放速度比实际播放速度快,如果要显示的gif过大,还会出现BOOM的问题。

具体实现可以参考地址:http://blog.youkuaiyun.com/y_fc75/article/details/46494929


二、使用GifView的开源jar包

作者:ant:cy:liao
主页:http://code.google.com/p/gifview/
简介:功能很强大的Gif库,能设置加载方式,可以先加载后显示或者只显示第一帧,播放速度比实际播放速度快,如果要显示的gif太大,会出现BOOM的问题。
使用方法:
1)将GifView的jar包导入到项目中
2)在XML配置,用法与imageview一致
3)代码中配置

    gif3 = (GifView) findViewById(R.id.gif3);  
            // 设置Gif图片源  
            gif3.setGifImage(R.drawable.gif2);  
            // 添加监听器  
            gif3.setOnClickListener(this);  
            // 设置显示的大小,拉伸或者压缩  
            gif3.setShowDimension(300, 300);  
            // 设置加载方式:先加载后显示、边加载边显示、只显示第一帧再显示  
            gif3.setGifImageType(GifImageType.COVER);  

三、使用Android-gif-drawable开源库
简介:android-gif-drawable是github上的优秀开源项目,源码和demo使用的是studio开发,所以想用eclipse打开还要花点功夫。这个底层解析Gif使用的是C语言。它的有点久是加载大的图片时不会出现内存溢出的情况。保持Gif的动画效果,不会发生过快的情况。

android-gif-drawable的源代码下载地址:https://github.com/koral--/android-gif-drawable 

转发自:http://blog.youkuaiyun.com/zhoufuqiang30/article/details/43730437

可以参考demo:http://download.youkuaiyun.com/detail/zhoufuqiang30/8477033

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值