android中加载Gif图片
来源:互联网 发布:东莞网络电视剧 编辑:程序博客网 时间:2024/04/29 11:33
很多时候由于项目的需要,我们需要加载Gif的图片,实现动画效果,但是android本身并不支持直接加载Gif图片。因此网络上出现了很多关于android加载Gif图片的框架。今天在这里就为大家介绍其中的两个框架,一个是Xutils3.0,一个是android-gif-drawable的开源库。其中使用Xutils会出现适配的问题。所以这里不推荐在项目使用。
MainActivity.javapublic class MainActivity extends Activity implements View.OnClickListener { private Button mFirst;//使用android开源库加载 private Button mSecond;//使用xutils加载 private Context mContext; private Intent mIntent; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mContext = this; initView(); } //初始化View private void initView() { mFirst = (Button) findViewById(R.id.btn_gif); mSecond = (Button) findViewById(R.id.btn_xutils); mFirst.setOnClickListener(this); mSecond.setOnClickListener(this); } @Override public void onClick(View v) { switch (v.getId()) { case R.id.btn_gif: mIntent = new Intent(mContext, GifImageViewActivity.class); startActivity(mIntent); break; case R.id.btn_xutils: mIntent = new Intent(mContext, XutilsActivity.class); startActivity(mIntent); break; } }}
GifImageViewActivity.javapublic class GifImageViewActivity extends Activity { private GifImageView mGifImageView;//显示Gif的GifImageView @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_gif_imageview); initView(); } //初始化View private void initView() { mGifImageView = (GifImageView) findViewById(R.id.imageView); //gif 代码控制播放速度 try { GifDrawable gifDrawable = new GifDrawable(getResources(), R.drawable.test); gifDrawable.setSpeed(0.6f); mGifImageView.setImageDrawable(gifDrawable); } catch (IOException e) { e.printStackTrace(); } }}
XutilsActivity.javapublic class XutilsActivity extends Activity { private ImageView mImageView;//显示gif的imageview @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_xutils); initView(); } //初始化View private void initView() { mImageView = (ImageView) findViewById(R.id.xutils_imageview); ImageOptions imageOptions = new ImageOptions.Builder() .setIgnoreGif(false)//是否忽略gif图。false表示不忽略。不写这句,默认是true .setImageScaleType(ImageView.ScaleType.FIT_CENTER) .build(); x.image().bind(mImageView, "assets://test.gif", imageOptions); }}
activity_gif_imageview.xml<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:background="#ffffff" android:layout_height="match_parent"> <pl.droidsonroids.gif.GifImageView android:layout_width="match_parent" android:layout_height="match_parent" android:layout_centerInParent="true" android:scaleType="fitCenter" android:id="@+id/imageView" android:layout_marginRight="30dp" android:layout_marginLeft="30dp" android:layout_marginTop="30dp"/></RelativeLayout>
注:使用Xutils时需要在BaseApplication进行初始化x.Ext.init(this);
附:源码下载地址
0 0
- Android中加载Gif图片
- android中加载Gif图片
- android加载gif图片
- Android 加载gif图片
- Android加载gif图片
- android加载gif图片
- Android 加载.gif格式图片
- Android GIF图片加载显示
- Flex中加载gif图片
- Android中加载Gif动画图片
- 在Android中加载gif
- 利用android开源库android-gif-drawable加载gif格式图片
- Android 使用三方库android-gif-drawable 加载Gif图片
- Android中显示gif图片
- Android 加载gif图片 (详细运用)
- 关于android加载gif图片资源总结
- 关于android加载Gif图片的方法
- Android Gif 加载Video和图片
- 高并发高负载系统架构-php篇
- 从2级C中了解数据库基础
- 环境传感器
- 分段函数求值
- 六、TIM普通定时器
- android中加载Gif图片
- 微信开发流程
- 数据库备份和还原策略优缺点浅谈
- 高通8937平台手机关机概率卡住问题分析
- iOS编程的几种传值方式
- beyond compare 对class文件反编译及比较
- 摧毁一个学生有多简单?
- svn commit 时提示 Commit failed (details follow) Unable to create pristine install stream 系统找不到指定的路径
- win10+64位+python3.4安装scrapy