Android 中UniverImageLoader的属性及使用
来源:互联网 发布:mysql端口的作用 编辑:程序博客网 时间:2024/06/06 18:05
public class ImageLoaderManager {
private static final int THREAD_COUNT=4;//开启线程的数量
private static final int PRIORITY = 2;//优先级
private static final int MEMORY_CACHE_SIZE = 2 * 1024 * 1024;
private static final int DISK_CACHE_SIZE = 50 * 1024 * 1024;
private static final int CONNECTION_TIME_OUT = 5 * 1000;
private static final int READ_TIME_OUT = 30 * 1000;//读超时时间
private static ImageLoaderManager mInstance = null;private static ImageLoader mLoader = null;//获取ImageLoaderManager 的单例模式public static ImageLoaderManager getInstance(Context context) { if (mInstance == null) { synchronized (ImageLoaderManager.class) { if (mInstance == null) { mInstance = new ImageLoaderManager(context); } } } return mInstance;}//构造私有方法 在创建ImageLoaderManager 的时候,就配置好相关的设置private ImageLoaderManager(Context context) { ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(context) .threadPoolSize(THREAD_COUNT)//设置线程的数量 .threadPriority(Thread.NORM_PRIORITY-PRIORITY)//设置优先级 .denyCacheImageMultipleSizesInMemory()//设置加载的图片只有一种格式,默认时多种格式 .memoryCache(new WeakMemoryCache())//设置弱引用,当内存不足时,会回收图片 .diskCacheSize(DISK_CACHE_SIZE)// 设置硬盘的缓存大小 //将保存的时候的URI名称用MD5加密 设置硬盘缓存文件名生成规范 .diskCacheFileNameGenerator(new Md5FileNameGenerator()) // 设置图片加载和显示队列处理的类型 默认为QueueProcessingType.FIFO // 注:如果设置了taskExecutor或者taskExecutorForCachedImages 此设置无效 .tasksProcessingOrder(QueueProcessingType.LIFO) //设置图片默认的显示选项 .defaultDisplayImageOptions(getDefaultOptions()) // 设置图片下载器 // 默认为 DefaultConfigurationFactory.createBitmapDisplayer() .imageDownloader(new BaseImageDownloader(context,CONNECTION_TIME_OUT,READ_TIME_OUT)) //打印DebugLogs .writeDebugLogs() .build(); ImageLoader.getInstance().init(config); mLoader = ImageLoader.getInstance();}/** * 默认的图片显示Options ,可设置图片的缓存策略,编解码方式等,非常重要 * @return */private DisplayImageOptions getDefaultOptions() { DisplayImageOptions options = new DisplayImageOptions.Builder() .showImageForEmptyUri(R.drawable.default_user_avatar)//当URL为空时显示的图片 .showImageOnFail(R.drawable.default_user_avatar)//当图片加载失败时,显示的图片 .cacheInMemory(true)//设置下载的图片是否缓存在内存中,重要,否则图片不会缓存到内存中 .cacheOnDisk(true)//设置下载的图片是否缓存到SD卡中,重要哦,否则图片不会缓存到硬盘中 .considerExifParams(true)//是否考虑JPEG图像EXIF参数(旋转,翻转) .imageScaleType(ImageScaleType.IN_SAMPLE_INT)//设置图片以如何的编码方式显示 .bitmapConfig(Bitmap.Config.RGB_565)//设置图片的解码类型 .decodingOptions(new BitmapFactory.Options())//设置图片的解码配置 .resetViewBeforeLoading(true)//设置图片在下载前是否需要重置,复位 .build(); return options; //还可以设置其他的相关的属性 // 设置图片加载时的默认图片 // .showImageOnLoading(R.drawable.ic_chat_def_pic) // 设置延迟部分时间才开始加载 默认为0 // .delayBeforeLoading(100) // 设置添加到内存缓存 // 默认为false // 设置选项的图像解码 // .decodingOptions(new Options()) // 设置自定义显示器 // 默认为DefaultConfigurationFactory.createBitmapDisplayer() // .displayer(new FadeInBitmapDisplayer(300)) // 设置自定义的handler // 默认为new Handler() // .handler(new Handler())}//加载图片,并且显示到imageview中public void displayImage(ImageView imageView, String path, ImageLoadingListener listener) { if (mLoader != null) { mLoader.displayImage(path,imageView,listener); }}public void displayImage(ImageView imageView, String path) { displayImage(imageView,path,null);}
}
阅读全文
0 0
- Android 中UniverImageLoader的属性及使用
- Android中shape及相应属性的使用
- Android中Notification使用及常用属性
- Android自定义属性的定义及使用
- 【Android】常见控件的属性及使用
- Android中自定义属性的使用
- Android中自定义属性的使用
- Android中自定义属性的使用
- Android中自定义属性的使用
- Android中自定义属性的使用
- Android中自定义属性的使用
- Android中自定义属性的使用
- Android中自定义属性的使用
- android中自定义属性的使用
- Android中自定义属性的使用
- Android中自定义属性的使用
- android中自定义属性的使用
- Android中自定义属性的使用
- 谈谈UML之用例图(use cas diagrams)
- 双色球6+1Java模拟
- 2017-06-08
- Ofstream写文件
- 狗屎一样的React(第八节,React-router 4.0的使用姿势)
- Android 中UniverImageLoader的属性及使用
- 前端面试题
- Android之EditText特殊小技巧
- 在卷积神经网络训练过程中loss出现NaN的原因以及可以采取的方法
- 死锁问题?
- Chromium网页URL加载过程分析
- java 字符编码
- 设计一个无标题栏全屏显示的layout
- centos7下使用mytop监控MySQL性