ImageLoader的汇总

来源:互联网 发布:域名授权 编辑:程序博客网 时间:2024/06/05 17:32

2015年11月已经停止更新,维护。https://github.com/nostra13/Android-Universal-Image-Loader;


Gradle添加: compile 'com.nostra13.universalimageloader:universal-image-loader:1.9.5'   http://www.jianshu.com/p/77c12d3fd637;


/**
 * 图片加载、缓存、管理组件
 * 首先,在application里面进行初始化的操作,
 * 然后,新建一个图片处理的类,把常用的一些方法封装起来。
 *
 */


由于是使用过程中会图片获取要通过网络,并且有缓存设置,所以这2个权限必须要有。

<uses-permission android:name="android.permission.INTERNET" />  
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />  


也可以自定义图片缓存的路径,StorageUtils这个工具类是,图片框架自带的。


.discCache(new UnlimitedDiscCache(cacheDir))//自定义缓存路径

使用网上的代码,一直报错,百度也没有任何消息,原来是字母别人写错了, 

.diskCache(new UnlimitedDiskCache(cacheDir)) // 自定义缓存路径


        // 对ImageLoader进行初始化操作
//        ImageLoader.getInstance().init(null);


使用displayImage()比使用loadImage()方便很多。displayImage也会根据控件的大小和imageScaleType来自动裁剪图片

还需要加上去,// 显示图片的个性化配置,http://blog.csdn.net/xiaanming/article/details/26810303/,

也可以监听图片是否加载成功,图片加载的进度条。

loadImage()是将图片对象回调到ImageLoadingListener接口的onLoadingComplete()方法中,需要我们手动去设置到ImageView上面。http://blog.csdn.net/vipzjyno1/article/details/23206387,这里面有关于监听的几种实现方法。


当我们快速滑动GridView,ListView,我们希望能停止图片的加载,

listView.setOnScrollListener(new PauseOnScrollListener(imageLoader, pauseOnScroll, pauseOnFling));  

第一个参数就是我们的图片加载对象ImageLoader, 第二个是控制是否在滑动过程中暂停加载图片,如果需要暂停传true就行了,第三个参数控制猛的滑动界面的时候图片是否加载。


看下图片加载的Log信息、

加载其他来源的图片、

OutOfMemoryError、


0 0