package com.example.android_test.adapter; import java.io.File; import android.content.Context; import android.graphics.Bitmap; import android.os.Environment; import android.util.Log; import com.example.android_test.R; import com.nostra13.universalimageloader.cache.disc.impl.UnlimitedDiskCache; import com.nostra13.universalimageloader.cache.memory.impl.WeakMemoryCache; import com.nostra13.universalimageloader.core.DisplayImageOptions; import com.nostra13.universalimageloader.core.ImageLoader; import com.nostra13.universalimageloader.core.ImageLoaderConfiguration; import com.nostra13.universalimageloader.core.assist.QueueProcessingType; import com.nostra13.universalimageloader.core.display.CircleBitmapDisplayer; import com.nostra13.universalimageloader.core.download.BaseImageDownloader; import com.nostra13.universalimageloader.utils.StorageUtils; /** * * @author h 图片加载的工具类 */ public class ImgLoaderUtils { /** * 初始化ImageLoader * * @param context */ public static void initImgLoader(Context context) { // 缓存路径 String cachePath = Environment.getExternalStorageDirectory() + "/Android/data/" + context.getPackageName() + "/cache/"; // 获取到缓存的目录地址 File cacheDir = StorageUtils.getOwnCacheDirectory(context, cachePath); Log.d("cacheDir", cacheDir.getPath()); /* ImageLoader配置 */ ImageLoaderConfiguration configuration = new ImageLoaderConfiguration.Builder( context) // .memoryCacheExtraOptions(480, 800)//每个缓存文件的最大宽高 .threadPoolSize(3) // 线程池内加载线程的数量 .threadPriority(Thread.NORM_PRIORITY - 2) // 线程优先级 .denyCacheImageMultipleSizesInMemory() .memoryCache(new WeakMemoryCache()) // .memoryCache(new UsingFreqLimitedMemoryCache(2*1024*1024)) .memoryCacheSize(2 * 1024 * 1024) .diskCacheSize(50 * 1024 * 1024) // .discCacheFileNameGenerator(new // Md5FileNameGenerator())//MD5加密uri名称 // .discCacheFileNameGenerator(new // HashCodeFileNameGenerator())//hashcode加密uri名称 .tasksProcessingOrder(QueueProcessingType.FIFO) .diskCache(new UnlimitedDiskCache(cacheDir)) // 自定义缓存路径 .imageDownloader( new BaseImageDownloader(context, 5 * 1000, 30 * 1000)) .writeDebugLogs().build(); // 全局初始化此配置 ImageLoader.getInstance().init(configuration); } /** * 设置图片显示选项 * * @return DisplayImageOptions 图片显示选项 */ public static DisplayImageOptions setImgOptions() { return new DisplayImageOptions.Builder() .bitmapConfig(Bitmap.Config.RGB_565).cacheOnDisk(true) // 缓存到sd卡 .cacheInMemory(true) // 缓存到内存中 .showImageForEmptyUri(R.drawable.ic_launcher) // 空uri时显示 .showImageOnFail(R.drawable.ic_launcher) // 加载失败显示 .showImageOnLoading(R.drawable.ic_launcher) // imageyuan .displayer(new CircleBitmapDisplayer())// 加载时显示 .build(); } }
imageloder工具类
猜你喜欢
转载自zhengaihua.iteye.com/blog/2334782
今日推荐
周排行