demo在附件
写道
来自互联网资料:
Android-Universal-Image-Loader是一个开源的UI组件程序,该项目的目的是提供一个可重复使用的仪器为异步图像加 载,缓存和显示。
特点
多线程的图像加载的可能性的宽调谐对ImageLoader的配置(线程池的大小,HTTP选项,内存和光盘高速缓存,显示图像,以及其他)
的图像的可能性中的缓存存储器和/或设备的文件器系统(或SD卡)可以监听加载过程中
可自定义每个显示的图像调用分隔的选项
Widget支持
Android 2.0上支持
使用方法
缓存不是默认启用
1、DisplayImageOptions的配置
DisplayImageOptions imageOptions = new DisplayImageOptions.Builder()
.showImageOnLoading(R.drawable.ic_launcher)// 加载时显示的默认图片
.showImageForEmptyUri(R.drawable.ic_empty)// 加载url=null时显示的默认图片
.showImageOnFail(R.drawable.ic_error) // 加载出错时显示错误的默认图片
.cacheInMemory(true)//开启内存缓存
.cacheOnDisc(true) //开启硬盘缓存
.bitmapConfig(Bitmap.Config.RGB_565) //图片色值配置
.build();
2、ImageLoaderConfiguration的配置
// 自定义缓存路径
File cacheDir = StorageUtils.getOwnCacheDirectory(getApplicationContext(), mCache);
ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(getApplicationContext())
.memoryCacheExtraOptions(480, 800) // default = device screen dimensions
.discCacheExtraOptions(480, 800, CompressFormat.JPEG, 85, null)
.taskExecutor(AsyncTask.THREAD_POOL_EXECUTOR)//3.0才支持
.taskExecutorForCachedImages(AsyncTask.THREAD_POOL_EXECUTOR)//3.0才支持
.threadPoolSize(Thread.NORM_PRIORITY)// default 3
.threadPriority(Thread.NORM_PRIORITY - 1)// default 线程优先级别
.tasksProcessingOrder(QueueProcessingType.FIFO)// default
.denyCacheImageMultipleSizesInMemory()
.memoryCache(new LruMemoryCache(2 * 1024 * 1024)) // 2M
.memoryCacheSize(2 * 1024 * 1024)// 2M
// .discCache(new UnlimitedDiscCache(cacheDir)) // default UnlimitedDiscCache ,HashCodeFileNameGenerator
.discCache(new UnlimitedDiscCache(cacheDir,new Md5FileNameGenerator())) // default UnlimitedDiscCache
.discCacheSize(50 * 1024 * 1024) // 本地缓存大小50M
.discCacheFileCount(100) // 文件数量
// .discCacheFileNameGenerator(new HashCodeFileNameGenerator())// default
// .discCacheFileNameGenerator(new Md5FileNameGenerator()) // 文件命名器
.imageDownloader(new BaseImageDownloader(getApplicationContext())) // default
.imageDecoder(new BaseImageDecoder(true)) // default
.defaultDisplayImageOptions(imageOptions) // default DisplayImageOptions.createSimple()
.writeDebugLogs()
.build();
ImageLoader mImageLoader = ImageLoader.getInstance();
mImageLoader.init(config);
3、部分参数解释:
//设置图片在下载期间显示的图片
showStubImage(R.drawable.ic_launcher)
//设置图片Uri为空或是错误的时候显示的图片
showImageForEmptyUri(R.drawable.ic_empty)
//设置图片加载/解码过程中错误时候显示的图片
showImageOnFail(R.drawable.ic_error)
//设置图片在下载前是否重置,复位
resetViewBeforeLoading()
//设置下载的图片是否缓存在内存中
cacheInMemory()
//设置下载的图片是否缓存在SD卡中
cacheOnDisc()
//设置图片的解码类型
bitmapConfig(Bitmap.Config.RGB_565)
//设置图片的解码配置
decodingOptions(android.graphics.BitmapFactory.Options decodingOptions)
//设置图片下载前的延迟
delayBeforeLoading(int delayInMillis)
//设置额外的内容给ImageDownloader
extraForDownloader(Object extra)
//设置图片加入缓存前,对bitmap进行设置
preProcessor(BitmapProcessor preProcessor)
//设置显示前的图片,显示后这个图片一直保留在缓存中
postProcessor(BitmapProcessor postProcessor)
//设置图片以如何的编码方式显示
imageScaleType(ImageScaleType imageScaleType)
/**
* 设置图片的显示方式
* @param displayer
*/
displayer(BitmapDisplayer displayer)
displayer:
RoundedBitmapDisplayer(int roundPixels)设置圆角图片
FakeBitmapDisplayer()这个类什么都没做
FadeInBitmapDisplayer(int durationMillis)设置图片渐显的时间
SimpleBitmapDisplayer()正常显示一张图片
/**
* 图片的缩放方式
* @param imageScaleType
*/
imageScaleType(ImageScaleType imageScaleType)
imageScaleType:
EXACTLY :图像将完全按比例缩小的目标大小
EXACTLY_STRETCHED:图片会缩放到目标大小完全
IN_SAMPLE_INT:图像将被二次采样的整数倍
IN_SAMPLE_POWER_OF_2:图片将降低2倍,直到下一减少步骤,使图像更小的目标大小
NONE:图片不会调整
4、权限
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
Android-Universal-Image-Loader是一个开源的UI组件程序,该项目的目的是提供一个可重复使用的仪器为异步图像加 载,缓存和显示。
特点
多线程的图像加载的可能性的宽调谐对ImageLoader的配置(线程池的大小,HTTP选项,内存和光盘高速缓存,显示图像,以及其他)
的图像的可能性中的缓存存储器和/或设备的文件器系统(或SD卡)可以监听加载过程中
可自定义每个显示的图像调用分隔的选项
Widget支持
Android 2.0上支持
使用方法
缓存不是默认启用
1、DisplayImageOptions的配置
DisplayImageOptions imageOptions = new DisplayImageOptions.Builder()
.showImageOnLoading(R.drawable.ic_launcher)// 加载时显示的默认图片
.showImageForEmptyUri(R.drawable.ic_empty)// 加载url=null时显示的默认图片
.showImageOnFail(R.drawable.ic_error) // 加载出错时显示错误的默认图片
.cacheInMemory(true)//开启内存缓存
.cacheOnDisc(true) //开启硬盘缓存
.bitmapConfig(Bitmap.Config.RGB_565) //图片色值配置
.build();
2、ImageLoaderConfiguration的配置
// 自定义缓存路径
File cacheDir = StorageUtils.getOwnCacheDirectory(getApplicationContext(), mCache);
ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(getApplicationContext())
.memoryCacheExtraOptions(480, 800) // default = device screen dimensions
.discCacheExtraOptions(480, 800, CompressFormat.JPEG, 85, null)
.taskExecutor(AsyncTask.THREAD_POOL_EXECUTOR)//3.0才支持
.taskExecutorForCachedImages(AsyncTask.THREAD_POOL_EXECUTOR)//3.0才支持
.threadPoolSize(Thread.NORM_PRIORITY)// default 3
.threadPriority(Thread.NORM_PRIORITY - 1)// default 线程优先级别
.tasksProcessingOrder(QueueProcessingType.FIFO)// default
.denyCacheImageMultipleSizesInMemory()
.memoryCache(new LruMemoryCache(2 * 1024 * 1024)) // 2M
.memoryCacheSize(2 * 1024 * 1024)// 2M
// .discCache(new UnlimitedDiscCache(cacheDir)) // default UnlimitedDiscCache ,HashCodeFileNameGenerator
.discCache(new UnlimitedDiscCache(cacheDir,new Md5FileNameGenerator())) // default UnlimitedDiscCache
.discCacheSize(50 * 1024 * 1024) // 本地缓存大小50M
.discCacheFileCount(100) // 文件数量
// .discCacheFileNameGenerator(new HashCodeFileNameGenerator())// default
// .discCacheFileNameGenerator(new Md5FileNameGenerator()) // 文件命名器
.imageDownloader(new BaseImageDownloader(getApplicationContext())) // default
.imageDecoder(new BaseImageDecoder(true)) // default
.defaultDisplayImageOptions(imageOptions) // default DisplayImageOptions.createSimple()
.writeDebugLogs()
.build();
ImageLoader mImageLoader = ImageLoader.getInstance();
mImageLoader.init(config);
3、部分参数解释:
//设置图片在下载期间显示的图片
showStubImage(R.drawable.ic_launcher)
//设置图片Uri为空或是错误的时候显示的图片
showImageForEmptyUri(R.drawable.ic_empty)
//设置图片加载/解码过程中错误时候显示的图片
showImageOnFail(R.drawable.ic_error)
//设置图片在下载前是否重置,复位
resetViewBeforeLoading()
//设置下载的图片是否缓存在内存中
cacheInMemory()
//设置下载的图片是否缓存在SD卡中
cacheOnDisc()
//设置图片的解码类型
bitmapConfig(Bitmap.Config.RGB_565)
//设置图片的解码配置
decodingOptions(android.graphics.BitmapFactory.Options decodingOptions)
//设置图片下载前的延迟
delayBeforeLoading(int delayInMillis)
//设置额外的内容给ImageDownloader
extraForDownloader(Object extra)
//设置图片加入缓存前,对bitmap进行设置
preProcessor(BitmapProcessor preProcessor)
//设置显示前的图片,显示后这个图片一直保留在缓存中
postProcessor(BitmapProcessor postProcessor)
//设置图片以如何的编码方式显示
imageScaleType(ImageScaleType imageScaleType)
/**
* 设置图片的显示方式
* @param displayer
*/
displayer(BitmapDisplayer displayer)
displayer:
RoundedBitmapDisplayer(int roundPixels)设置圆角图片
FakeBitmapDisplayer()这个类什么都没做
FadeInBitmapDisplayer(int durationMillis)设置图片渐显的时间
SimpleBitmapDisplayer()正常显示一张图片
/**
* 图片的缩放方式
* @param imageScaleType
*/
imageScaleType(ImageScaleType imageScaleType)
imageScaleType:
EXACTLY :图像将完全按比例缩小的目标大小
EXACTLY_STRETCHED:图片会缩放到目标大小完全
IN_SAMPLE_INT:图像将被二次采样的整数倍
IN_SAMPLE_POWER_OF_2:图片将降低2倍,直到下一减少步骤,使图像更小的目标大小
NONE:图片不会调整
4、权限
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
相关推荐
**Android-Universal-Image-Loader 图片异步加载库详解** 在Android开发中,图片的加载和显示是一项常见的任务,特别是在处理大量图片或者网络图片时,如何高效、流畅地加载和展示图片至关重要。为此,开发者社区...
Android-Universal-Image-Loader是一个开源的UI组件程序,该项目的目的是提供一个可重复使用的仪器为异步图像加载,缓存和显示。 Android开发中我们会经常遇到图片过多或操作不当造成OOM异常,有时虽然是解决了这个...
AllenImageLoader是一款基于Android-Universal-Image-Loader的优化版本,旨在解决Android平台上图片加载、缓存以及显示的问题。在Android开发中,图片加载是一个常见的需求,尤其是在处理大量图片或者网络图片时,...
"Android-Universal-Image-Loader 图片异步加载类库的使用(超详细配置)"这篇文档可能包含了如何配置和使用这个库的详细步骤。Universal Image Loader (UIL) 是一个强大的Android图片加载库,它支持缓存策略、图片...
开发者可以反编译APK来查看其内部的布局、图片处理逻辑以及使用的第三方库,如Glide、Picasso或Universal Image Loader等,这些都是常见的Android图片加载库。 "JavaApk源码说明.txt"可能包含了关于压缩包中源代码...
4. **多媒体处理库**:包括音频和视频播放、图像处理等,例如Android的MediaPlayer库或第三方库如Volley和Universal Image Loader。 5. **位置服务和地图库**:如Google Maps API的封装,便于在应用中集成地图功能...
在这种情况下,引入专门的图片加载库如 Glide、Picasso 或 Universal Image Loader 等可以显著提高图片加载速度和用户体验。这些库提供了缓存机制、异步加载、图片压缩等功能,有效解决了内存占用过高和UI卡顿的问题...
我们只需要将 jar 包拷贝到 app/libs 目录下,然后在 app/build.gradle 文件中添加以下代码:dependencies { compile files('libs/libammsdk.jar') compile files('libs/universal-image-loader-1.8.6-with-sources....
1. **Gif解析**:`ImageViewEx`内部可能集成了Gif图片的解析库,如`Android-Universal-Image-Loader`或`Glide`等,这些库能够读取并解析Gif文件,将其转化为一系列的帧图片。 2. **帧动画管理**:为了实现动态Gif的...
1. **多图选择框架**:在Android中,实现多图选择通常会用到第三方库,如`Glide`、`Picasso`用于图片加载,`Android-Universal-Image-Loader`或`Fresco`处理图片缓存。此外,专门的多选图片库如` Auswahl`、`Image...
1. **第三方库**:Android社区中存在许多用于播放GIF动画的开源库,例如`NineOldAndroids`、`Android-Universal-Image-Loader`和`Glide`等。这些库不仅支持GIF动画的播放,还提供了丰富的功能,如缓存、异步加载等。...
第三方库如`Android-Universal-Image-Loader`专门处理图片文件,而`Android-async-http`则方便进行文件上传下载。 以上就是Android开发中常用的一些封装类库及其核心功能。它们大大提高了开发效率,同时也降低了...
首先,我们来看看"universal-image-loader-1.9.5.jar"这个文件。这是一个Java类库文件,包含了UniversalImageLoader库的所有源代码和资源。开发者可以通过将这个JAR文件引入到他们的Android项目中,来使用该库提供的...
常见的库有Glide、Picasso和Universal Image Loader。Glide以其高效、流畅的图片加载和动画效果受到青睐,Picasso则以其简单易用的API和良好的社区支持闻名。 5. **二维码**:ZXing(Zebra Crossing)库是处理条形...
16、Android-Universal-Image-Loader 为了实现异步的网络图片加载,支持多线程异步加载。 17、Android的开发框架 mobilelite 为Android应用开发提供一个轻量级开发框架,让开发者可以基于HTML/CSS/JAVASCRIPT快速...
`ImageLoader`通常指的是Android开发中用于加载图片的库,如Universal Image Loader或Glide等。这类库不仅负责从网络下载图片,还会进行内存和磁盘缓存,防止内存溢出并提高图片加载速度。以Universal Image Loader...
- 图片加载:图片加载库如Glide、Picasso或Universal Image Loader是Android开发中的常见需求。帮助类可能提供了简单的接口,用于快速集成图片加载功能。 - 图片压缩:为了优化内存使用和加载速度,图片通常需要...
Android开发中常见的库有Universal Image Loader、Glide、Picasso等。这些库能够在后台线程下载并缓存图片,减少主线程负担,防止因图片加载导致的卡顿。它们通常提供图片占位符、错误图以及尺寸调整等功能,以优化...
Android中常见的库如Glide、Picasso和Universal Image Loader等提供了异步加载图片的功能。它们会将图片加载任务放到后台线程执行,避免阻塞主线程。同时,这些库还具有缓存机制,能减少网络请求次数,提高加载速度...