ImageLoader工具类
package com.example.yunifanghomedemo.utils;
import android.content.Context;
import android.graphics.Bitmap;
import com.example.yunifanghomedemo.R;
import com.nostra13.universalimageloader.cache.disc.naming.HashCodeFileNameGenerator;
import com.nostra13.universalimageloader.cache.memory.impl.LruMemoryCache;
import com.nostra13.universalimageloader.core.DisplayImageOptions;
import com.nostra13.universalimageloader.core.ImageLoader;
import com.nostra13.universalimageloader.core.ImageLoaderConfiguration.Builder;
import com.nostra13.universalimageloader.core.assist.ImageScaleType;
import com.nostra13.universalimageloader.core.assist.QueueProcessingType;
import com.nostra13.universalimageloader.core.decode.BaseImageDecoder;
import com.nostra13.universalimageloader.core.display.CircleBitmapDisplayer;
import com.nostra13.universalimageloader.core.display.RoundedBitmapDisplayer;
public class ImageLoaderUtils {
/**
*
* @param context
*/
public static void initConfiguration(Context context) {
Builder configuration = new Builder(context);
// --------------------------------------------------------------------
configuration
.threadPoolSize(3)
.threadPriority(Thread.NORM_PRIORITY - 2)
.tasksProcessingOrder(QueueProcessingType.FIFO)
.denyCacheImageMultipleSizesInMemory()
.memoryCache(new LruMemoryCache(2 * 1024 * 1024))
.memoryCacheSize(2 * 1024 * 1024)
.memoryCacheSizePercentage(13)
.diskCacheSize(50 * 1024 * 1024)
.diskCacheFileCount(100)
.diskCacheFileNameGenerator(new HashCodeFileNameGenerator())
.imageDecoder(new BaseImageDecoder(true))
.defaultDisplayImageOptions(DisplayImageOptions.createSimple())
.writeDebugLogs();
// ---------------------------------------------------------------------
ImageLoader.getInstance().init(configuration.build());
}
/**
*
* @return
*/
public static DisplayImageOptions initOptions() {
DisplayImageOptions options = new DisplayImageOptions.Builder()
.showImageOnLoading(R.drawable.ic_default)
.showImageOnFail(R.drawable.ic_default)
.showImageForEmptyUri(R.drawable.ic_default)
.cacheInMemory(true)
.cacheOnDisc(true)
.considerExifParams(true)
.imageScaleType(ImageScaleType.EXACTLY_STRETCHED)
.bitmapConfig(Bitmap.Config.RGB_565)
.resetViewBeforeLoading(true)
.displayer(new RoundedBitmapDisplayer(20))
.displayer(new CircleBitmapDisplayer())
// -------------------------------------------------------------------
.build();
return options;
}
public static DisplayImageOptions myInitOptions() {
DisplayImageOptions options = new DisplayImageOptions.Builder()
.showImageOnFail(R.drawable.ic_default)
.showImageForEmptyUri(R.drawable.ic_default)
.cacheInMemory(true)
.cacheOnDisc(true)
.considerExifParams(true)
.imageScaleType(ImageScaleType.EXACTLY_STRETCHED)
.bitmapConfig(Bitmap.Config.RGB_565)
.resetViewBeforeLoading(true)
.build();
return options;
}
public static DisplayImageOptions myInitOptionsRadiu() {
DisplayImageOptions options = new DisplayImageOptions.Builder()
.showImageOnFail(R.drawable.ic_default)
.showImageForEmptyUri(R.drawable.ic_default)
.cacheInMemory(true)
.cacheOnDisc(true)
.considerExifParams(true)
.imageScaleType(ImageScaleType.EXACTLY_STRETCHED)
.bitmapConfig(Bitmap.Config.RGB_565)
.resetViewBeforeLoading(true)
.displayer(new RoundedBitmapDisplayer(10))
.build();
return options;
}
}