您的位置:首页 > 移动开发 > Android开发

android高级框架xUtils之BitmapUtils

2016-01-23 14:48 501 查看
xutils简介:

xUtils 是一个工具类的集合体,其中包含许多实用的Android工具,主要包含四大模块:

1、
ViewUtils的模块(点击进入)

2、 HttpUtils的模块

3、
BitmapUtils的模块(点击进入)

4、 DbUtils的模块(点击进入)

现在我们来正式学习BitmapUtils,同样我们也通过三个步骤来学习:

一、添加权限

<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
二、创建BitmapUtils

//通常我们需要将这个创建BitmapUtils的方法放在自定义的application中

/**
* 使用默认配置创建
*/
protected void createBitmapUtils()
{
mBmUtils = new BitmapUtils(this);
}

/**
* 自定义各种配置
*/
protected void createBitmapUtilsWithCfg(){
//指定本地缓存路径以及内存缓存大小
int iSize = (int) (Runtime.getRuntime().maxMemory()/8);
mBmUtils = new BitmapUtils(this,"/sdcard/bmcc",iSize);

//线程池中线程数量
mBmUtils.configThreadPoolSize(4);

//加载失败图片
mBmUtils.configDefaultLoadFailedImage(R.mipmap.ic_launcher);

//加载中图片
mBmUtils.configDefaultLoadingImage(R.mipmap.ic_launcher);

//连接超时时间
mBmUtils.configDefaultConnectTimeout(30000);

//设置图片大小
mBmUtils.configDefaultBitmapMaxSize(300,300);

}
三、加载图片

1.加载本地图片

protected void showLocalPic(){
MyAppliction.bitmapUtils.display(imageView, "/sdcard/p1.jpg");//第一参数:ImageView 第二个参数:本地图片的存放位置
}


2.加载网络图片

protected void showNetPic(){
String strUrl = "http://www.pp3.cn/uploads/allimg/111116/11021321R-4.jpg";
MyAppliction.bitmapUtils.display(imageView,strUrl);
}


3.设置listView滑动时不加载图片

listDatas = new ArrayList<>();//数据源
MyAdpter<String> adapter = new MyAdpter<>(this,listDatas);
//清除缓存
MyAppliction.bitmapUtils.clearCache();
//不允许内存缓存
MyAppliction.bitmapUtils.configMemoryCacheEnabled(false);
//不允许本地缓存
MyAppliction.bitmapUtils.configDiskCacheEnabled(false);

/*listView.setOnScrollListener(new AbsListView.OnScrollListener() {
@Override
public void onScrollStateChanged(AbsListView view, int scrollState) {

}

@Override
public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {

}
});*/
/**
* 设置禁止在滑动和快速上抛的时候加载图片,
* 参数一:bitmaputils
* 参数二:是否滑动时候加载
* 参数三:是否快速上抛的时候加载
*/
listView.setOnScrollListener(new PauseOnScrollListener(MyAppliction.bitmapUtils, true, true));
listView.setAdapter(adapter);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: