//去初始化ImageLoader//得到緩存路徑File cacheDir = StorageUtils.getCacheDirectory(this);ImageLoaderConfiguration configuration = new ImageLoaderConfiguration.Builder(this) .memoryCacheExtraOptions(480, 800)//你要在內存當中要緩存多大像素的圖片 .diskCacheExtraOptions(480, 800, null)//你要在sdcard中緩存多大像素的圖片 .threadPoolSize(3)//設置線程池中有多少個線程 .threadPRiority(Thread.NORM_PRIORITY - 1)//設置線程優先級 .tasksProcessingOrder(QueueProcessingType.FIFO)//先進先出 .denyCacheImageMultipleSizesInMemory()//內存緩存的最大值 .memoryCache(new LruMemoryCache(2 * 1024 * 1024))//設置內存緩存大小 2M .memoryCacheSize(2 * 1024 * 1024)//內存緩存的最大值 .memoryCacheSizePercentage(10)//設置占用內存的百分比 .diskCache(new UnlimitedDiskCache(cacheDir))//設置sdcard的緩存目錄 .diskCacheSize(50 * 1024 * 1024)//設置sdcard緩存的大小 .diskCacheFileCount(100)//設置緩存文件數 例如:我只緩存100張圖片 .diskCacheFileNameGenerator(new HashCodeFileNameGenerator())//將文件名通過hashcode碼算出,以防止同名 .imageDownloader(new BaseImageDownloader(this))//默認,一個圖片下載器 .imageDecoder(new BaseImageDecoder(true))//默認的一個圖片的渲染格式 RGB_565 (一個像素占用2個字節) ARGB_8888(四字節) .defaultDisplayImageOptions(DisplayImageOptions.createSimple())//設置圖片的緩存項 .writeDebugLogs() .build();ImageLoader.getInstance().init(configuration);
新聞熱點
疑難解答