Android-----第三方 ImageLoader 的简单配置和使用

      ImageLoader 的简单使用配置,最好是将配置信息放到application里面,这样我们就不需要每次使用都需要配置了

     1、首先我们得有一个包

      

    2、简单的配置信息

     

     

 1         //显示图片的配置
 2         DisplayImageOptions options = new DisplayImageOptions.Builder()
 3                 .showImageOnLoading(R.drawable.ofm_photo_icon)   //下载时显示的图片
 4                 .showImageForEmptyUri(R.drawable.ic_launcher)    //设置图片Uri为空或是错误的时候显示的图片
 5                 .showImageOnFail(R.drawable.main_head_erroy_loader)      //下载 错误 显示的图片
 6                 .cacheInMemory(true)    //加入 到缓存
 7                 .cacheOnDisk(true)      //写入 内存卡
 8                 .bitmapConfig(Bitmap.Config.RGB_565)   //图片清晰度
 9                 .imageScaleType(ImageScaleType.EXACTLY) //设置图片以如何的编码方式显示
10                 .build();
11         cacheDir = StorageUtils.getOwnCacheDirectory(getApplicationContext(),getPackageName()+"/imageCatch");//设置缓存的路径
12         ImageLoaderConfiguration config = new ImageLoaderConfiguration
13                 .Builder(getApplicationContext())
14                 .memoryCacheExtraOptions(480, 800) // max width, max height,即保存的每个缓存文件的最大长宽
15                 .threadPoolSize(3)//线程池内加载的数量
16                 .threadPriority(Thread.NORM_PRIORITY - 2)
17                 .denyCacheImageMultipleSizesInMemory()
18                 //设置内存缓存的大小为手机运行内存的   1/8
19                 .memoryCacheSize((int) Runtime.getRuntime().maxMemory() / 8)
20                 .diskCacheSize(10 * 1024 * 1024)   //缓存大小 10M
21                 .diskCacheFileNameGenerator(new HashCodeFileNameGenerator())   //将保存的时候的URI名称用 加密
22                 .tasksProcessingOrder(QueueProcessingType.LIFO)
23                 .diskCacheFileCount(100) //缓存的文件数量
24                 .diskCache(new UnlimitedDiskCache(cacheDir))     //自定义缓存路径
25                 .defaultDisplayImageOptions(DisplayImageOptions.createSimple())
26                 .imageDownloader(new BaseImageDownloader(getApplicationContext(), 5 * 1000, 30 * 1000)) // connectTimeout (30 s), readTimeout (30 s)超时时间
27                 .defaultDisplayImageOptions(options)
28 //                .writeDebugLogs() // Remove for release app
29                 .build();  //开始构建
30         //初始化ImageLoader
31         ImageLoader.getInstance().init(config);

  3、使用ImageLoader

      第一个参数为图片的Url,第二个参数为显示图片的ImageView。

//网络请求加载图片
        ImageLoader.getInstance().displayImage(newsList.get(position).getImg(), imageView);

  若显示的图片配置信息和application配置的不同,可以自己再次另行设置

 1  private void loadImage(ImageView imageView,int position){
 2         //显示图片的配置
 3         DisplayImageOptions options = new DisplayImageOptions.Builder()
 4                 .showImageOnLoading(R.drawable.ofm_photo_icon)   //下载时显示的图片
 5                 .showImageForEmptyUri(R.drawable.ic_launcher)    //设置图片Uri为空或是错误的时候显示的图片
 6                 .showImageOnFail(R.drawable.card_photofail)      //下载 错误 显示的图片
 7                 .cacheInMemory(true)    //加入 到缓存
 8                 .cacheOnDisk(true)      //写入 内存卡
 9                 .bitmapConfig(Bitmap.Config.RGB_565)   //图片清晰度
10                 .imageScaleType(ImageScaleType.EXACTLY)  //设置图片以如何的编码方式显示
11                 .build();
12         //网络请求加载图片
13         ImageLoader.getInstance().displayImage(newsList.get(position).getImg(), imageView, options);
14     }

 

posted @ 2015-10-18 15:56  灬布衣丶公爵丨  阅读(356)  评论(0编辑  收藏  举报