//依赖
compile 'com.google.android.gms:play-services-appindexing:8.4.0'
//MyApp
public class MyApp extends Application{ public void onCreate() { super.onCreate(); File cacheDir = StorageUtils.getOwnCacheDirectory(this, "imageloader/Cache"); ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(this) .memoryCacheExtraOptions(480, 800) //即保存的每个缓存文件的最大长宽 .threadPoolSize(3)//线程池内加载的数量 .threadPriority(Thread.NORM_PRIORITY -2) .denyCacheImageMultipleSizesInMemory() .memoryCache(new UsingFreqLimitedMemoryCache(2* 1024 * 1024)) // You can pass your own memory cache implementation/你可以通过自己的内存缓存实现 .memoryCacheSize(2 * 1024 * 1024) .discCacheSize(50 * 1024 * 1024) .tasksProcessingOrder(QueueProcessingType.LIFO) .discCacheFileCount(100) //缓存的文件数量 .discCache(new UnlimitedDiscCache(cacheDir))//自定义缓存路径 .defaultDisplayImageOptions(DisplayImageOptions.createSimple()) .imageDownloader(new BaseImageDownloader(this,5 * 1000, 30 * 1000)) // connectTimeout (5 s), readTimeout (30 s)超时时间 .writeDebugLogs() .build();//开始构建 ImageLoader.getInstance().init(config); } }//设置加载
//设置加载数据的格式 DisplayImageOptions options = new DisplayImageOptions.Builder() .showImageOnLoading(R.drawable.iv_change) // 设置图片下载期间显示的图片 .showImageForEmptyUri(R.drawable.iv_change) // 设置图片Uri为空或是错误的时候显示的图片 .showImageOnFail(R.drawable.iv_change) // 设置图片加载或解码过程中发生错误显示的图片 .resetViewBeforeLoading(false) // default 设置图片在加载前是否重置、复位 .build();//调用
//图片赋值 ImageLoader.getInstance().displayImage(mList.get(position).getIconUrl(),holder.imageView,options);