Universal-Image-Loader框架的基本使用
来源:互联网 发布:阿里云 关闭快照功能 编辑:程序博客网 时间:2024/05/16 18:43
Universal-Image-Loader框架下载地址:https://github.com/nostra13/Android-Universal-Image-Loader
jar包下载地址:https://raw.githubusercontent.com/nostra13/Android-Universal-Image-Loader/master/downloads/universal-image-loader-1.9.5.jar
jar包下载地址:https://raw.githubusercontent.com/nostra13/Android-Universal-Image-Loader/master/downloads/universal-image-loader-1.9.5.jar
1.导入依赖
compile ‘com.nostra13.universalimageloader:universal-image-loader:1.9.4’
2.在AndroidManifest.xml里面配置ImageLodaer需要的权限
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"></uses-permission>
3.在应用的Application中配置ImageLoaderConfiguration,该配置只能在应用中配置一次,配置多次无效。
File cacheDir = StorageUtils.getCacheDirectory(getApplicationContext()); //缓存文件夹路径
ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(getApplicationContext())
.memoryCacheExtraOptions(480, 800) // default = device screen dimensions 内存缓存文件的最大长宽
.diskCacheExtraOptions(480, 800, null) // 本地缓存的详细信息(缓存的最大长宽),最好不要设置这个
.threadPoolSize(3) // default 线程池内加载的数量
.taskExecutor(...)
.taskExecutorForCachedImages(...)
.threadPriority(Thread.NORM_PRIORITY - 2) // default 设置当前线程的优先级
.tasksProcessingOrder(QueueProcessingType.FIFO) // default
.denyCacheImageMultipleSizesInMemory()
.memoryCache(new LruMemoryCache(2 * 1024 * 1024)) //可以通过自己的内存缓存实现
.memoryCacheSize(2 * 1024 * 1024) // 内存缓存的最大值
.memoryCacheSizePercentage(13) // default
.diskCache(new UnlimitedDiscCache(cacheDir)) // default 可以自定义缓存路径
.diskCacheSize(50 * 1024 * 1024) // 50 Mb sd卡(本地)缓存的最大值
.diskCacheFileCount(100) // 可以缓存的文件数量
// default为使用HASHCODE对UIL进行加密命名, 还可以用MD5(new Md5FileNameGenerator())加密
.diskCacheFileNameGenerator(new HashCodeFileNameGenerator())
.imageDownloader(new BaseImageDownloader(context)) // default
.imageDecoder(new BaseImageDecoder()) // default
.defaultDisplayImageOptions(DisplayImageOptions.createSimple()) // default
.writeDebugLogs() // 打印debug log
.build(); //开始构建
这些配置一般最好在Application中进行配置(根据自己实际情况进行配置,没有必要也不需要全部进行配置),全局调用。配置好这些后,记得调用
ImageLoader.getInstance().init(config);
进行初始化。但是如果你觉的麻烦可以使用默认的配置ImageLoaderConfiguration configuration = ImageLoaderConfiguration.createDefault(this);
不推荐使用默认配置。4.如何使用ImageLoader来展示图片呢?
ImageLoader mImageLoader = ImageLoader.getInstance();
ImageLoader 是单例模式,提供了如下方法:
ImageLoader.getInstance().displayImage(uri, imageView);
ImageLoader.getInstance().displayImage(uri, imageView, options);
ImageLoader.getInstance().displayImage(uri, imageView, listener);
ImageLoader.getInstance().displayImage(uri, imageView, options, listener);
ImageLoader.getInstance().displayImage(uri, imageView, options, listener, progressListener);
ImageLoader.getInstance().loadImage(uri, imageView);
ImageLoader.getInstance().loadImage(uri, imageView, options);
ImageLoader.getInstance().loadImage(uri, imageView, listener);
ImageLoader.getInstance().loadImage(uri, imageView, options, listener);
ImageLoader.getInstance().loadImage(uri, imageView, options, listener, progressListener);
5.demo实现
使用Universal-Image-Loader框架实现ListView的图片加载、GridView的图片加载、ViewPager的图片加载、Gallery画廊的图片加载、Widget的使用。demo地址:http://download.csdn.net/download/wwj_748/5975847
显示效果如下:
Universal-Image-Loader框架就介绍到这了,相对于Picasso 和 Glide框架来说使用比较复杂,具体如何使用,请参考以下资料:
Android图片缓存框架Android-Universal-Image-Loader的使用详解:http://blog.csdn.net/richardli1228/article/details/49183157
Android开源框架ImageLoader的完美例子 :http://www.cnblogs.com/zgz345/p/3502315.html
阅读全文
1 0
- Universal-Image-Loader框架的基本使用
- universal-image-loader的基本使用
- Universal-Image-Loader的使用
- Universal-Image-Loader的使用
- Universal-Image-Loader的使用
- 异步加载图片框架Android-Universal-Image-Loader的使用
- Android 开源框架Universal-Image-Loader的使用
- 安卓图片框架:universal-image-loader的快速使用
- Android-Universal-Image-Loader开源框架的使用
- Android 开源框架Universal-Image-Loader的初次使用
- universal-image-loader框架的再次封装使用
- Universal Image Loader 学习笔记-基本使用
- 使用Universal-Image-Loader框架加载图片
- Android-Universal-Image-Loader 框架使用
- Universal-Image-Loader 使用
- android-universal-image-loader的使用
- android Universal-Image-Loader的简单使用
- Android-Universal-Image-Loader的使用注意事项
- Linux磁盘与文件系统管理
- fastjson 转换 map 为 object 注意事项
- Android对复杂xml文件的增删改查节点操作
- 天气太热,表单太丑,我要怎么办?
- C语言 简 单教务评价系统 线性表结构体
- Universal-Image-Loader框架的基本使用
- win2008操作系统申请许可证书
- Calender打印日历
- 在Linux 操作系统下获得cpu的core的数量
- PDF文档转换成CAD图纸的常用方法
- 应届毕业生如何成为一名服务器端开发工程师(一)
- java循环分别实现将10进值整数和小数变成二进制数
- ReactiveObjC学习笔记
- 论如何画好一条虚线