您的位置:首页 > 其它

XUtils框架之显示网上图片

2016-04-08 15:07 232 查看
目前android应用研发进入了一种快速开发时代,由于敏捷研发体系的出现和快速市场效应的作用,逼得开发人员开发一款应用时要提高效率、甚至极速开发。所以老套的框架体系就不再适应这个环境,xutils就应运而生而且变得越来越火。通过使用xutils框架总结了一部分经验,再接下来的时间里会做以分享。

分享xutils主要封装了四大模块:DbUtils,ViewUtils,HttpUtils,BitmapUtils

其中BitmapUtils做了如下的改进:

1.支持加载网络图片和本地图片

2.加载bitmap的时候无需考虑bitmap加载过程中出现的oom和android容器快速滑动时出现的图片错位;

3.内存管理使用了iru算法,更好的管理bitmap内存

4.可配置线程加载线程数量,缓存大小,缓存路径,加载显示动画等

所以通过xutils显示网上图片是非常简单的一件事

BitmapUtils bitmapUtils = new BitmapUtils(this);

bitmapUtils .display(imageView, url);

就可以显示网址为url的网络图片了

如果设置显示失败选项需要添加

bitmapUtils .configDefaultLoadingImage(R.drawable.icon_default);//默认背景图片

bitmapUtils .configDefaultLoadFailedImage(R.drawable.icon_fail);//加载失败图片

bitmapUtils.configDefaultBitmapConfig(Bitmap.Config.RGB_565);//设置图片压缩类型

由于图片比较大,很多时候需要对图片显示的进度进行跟踪,所以加入回调接口

/**

* 显示图片回调

* @author zy

*/

public class MyBitmapLoadCallBack extends

DefaultBitmapLoadCallBack<ImageView> {

@Override

public void onLoading(ImageView container, String uri,

BitmapDisplayConfig config, long total, long current) {

showWaitDialog();//显示等待框

}

@Override

public void onLoadCompleted(ImageView container, String uri,

Bitmap bitmap, BitmapDisplayConfig config, BitmapLoadFrom from) {

// super.onLoadCompleted(container, uri, bitmap, config, from);

dismissWaitDialog();//去掉等待框

。。。。。。显示图片。。。。。。

}

@Override

public void onLoadFailed(ImageView container, String uri,

Drawable drawable) {

// TODO Auto-generated method stub

dismissWaitDialog();//去掉等待框

}

}

public void display(BitmapUtils bitmapUtils,ImageView imageview,String url){//外部接口函数

bitmapUtils.display(imageview, url,new MyBitmapLoadCallBack());

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: