####步骤要求
1:首先我们创建出来自己定义的包和类com.bawei.application和MyApplication类
2:实现onCreat方法
3:在清单文件中我们配置MyApplication的全路径
4:把第三方架包imageLoader导入libs
5:在MyApplication中实现代码的逻辑
####代码实现
#1:ImageLoaderConfiguration
#1:创建一个默认的
ImageLoaderConfiguration configuration=new ImageLoaderConfiguration.Builder(context);
ImageLoader.getInstance().init();//相当于初始化ImageLoaderConfiguration中的属性 (单例)
#2:在实际开发中我们应该
public class MyApplication extends Application {
@Override
public void onCreate() {
// TODO Auto-generated method stub
initApplication(this);
}
private void initApplication(Context context) {
/*
* 默认显示的效果
*/
DisplayImageOptions option = new DisplayImageOptions.Builder()
.showImageOnLoading(R.drawable.ic_launcher) //设置图片在下载期间显示的图片
.showImageForEmptyUri(R.drawable.ic_launcher)//设置图片Uri为空或是错误的时候显示的图片
.showImageOnFail(R.drawable.ic_launcher) //设置图片加载/解码过程中错误时候显示的图片
.cacheInMemory(true)//设置下载的图片是否缓存在内存中
.cacheOnDisc(true)//设置下载的图片是否缓存在SD卡中
.considerExifParams(true) //是否考虑JPEG图像EXIF参数(旋转,翻转)
.imageScaleType(ImageScaleType.EXACTLY_STRETCHED)//设置图片以如何的编码方式显示
.bitmapConfig(Bitmap.Config.RGB_565)//设置图片的解码类型//
.build();
/*
* ImageLoaderConfiguration具体配置
*/
ImageLoaderConfiguration configuration = new ImageLoaderConfiguration.Builder(
context).threadPriority(Thread.NORM_PRIORITY - 2)// 县城的优先级
.denyCacheImageMultipleSizesInMemory()// 同一个图片地址不允许存在多个
.discCacheSize(50 * 1024 * 1024)// 磁盘缓存大小空间 50Mb
.tasksProcessingOrder(QueueProcessingType.LIFO)// 后退先出
.writeDebugLogs()// 设置remover for relese app
.defaultDisplayImageOptions(option).build();// 创建执行
ImageLoader.getInstance().init(configuration);
}
#在适配器getView方法中直接写入
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
convertView=View.inflate(context, R.layout.item, null);
ImageView gv_iv = (ImageView) convertView.findViewById(R.id.image);
DisplayImageOptions opction=new DisplayImageOptions.Builder()
.cacheInMemory(true) //缓存到内存
.cacheOnDisc(true) //是否缓存到sd卡
.bitmapConfig(Bitmap.Config.RGB_565) //设置图片的类型
.showImageOnLoading(R.drawable.ic_launcher)
.build();
ImageLoader.getInstance().displayImage(imageUrl[position],gv_iv,opction);
return convertView;
}
1:首先我们创建出来自己定义的包和类com.bawei.application和MyApplication类
2:实现onCreat方法
3:在清单文件中我们配置MyApplication的全路径
4:把第三方架包imageLoader导入libs
5:在MyApplication中实现代码的逻辑
####代码实现
#1:ImageLoaderConfiguration
#1:创建一个默认的
ImageLoaderConfiguration configuration=new ImageLoaderConfiguration.Builder(context);
ImageLoader.getInstance().init();//相当于初始化ImageLoaderConfiguration中的属性 (单例)
#2:在实际开发中我们应该
public class MyApplication extends Application {
@Override
public void onCreate() {
// TODO Auto-generated method stub
initApplication(this);
}
private void initApplication(Context context) {
/*
* 默认显示的效果
*/
DisplayImageOptions option = new DisplayImageOptions.Builder()
.showImageOnLoading(R.drawable.ic_launcher) //设置图片在下载期间显示的图片
.showImageForEmptyUri(R.drawable.ic_launcher)//设置图片Uri为空或是错误的时候显示的图片
.showImageOnFail(R.drawable.ic_launcher) //设置图片加载/解码过程中错误时候显示的图片
.cacheInMemory(true)//设置下载的图片是否缓存在内存中
.cacheOnDisc(true)//设置下载的图片是否缓存在SD卡中
.considerExifParams(true) //是否考虑JPEG图像EXIF参数(旋转,翻转)
.imageScaleType(ImageScaleType.EXACTLY_STRETCHED)//设置图片以如何的编码方式显示
.bitmapConfig(Bitmap.Config.RGB_565)//设置图片的解码类型//
.build();
/*
* ImageLoaderConfiguration具体配置
*/
ImageLoaderConfiguration configuration = new ImageLoaderConfiguration.Builder(
context).threadPriority(Thread.NORM_PRIORITY - 2)// 县城的优先级
.denyCacheImageMultipleSizesInMemory()// 同一个图片地址不允许存在多个
.discCacheSize(50 * 1024 * 1024)// 磁盘缓存大小空间 50Mb
.tasksProcessingOrder(QueueProcessingType.LIFO)// 后退先出
.writeDebugLogs()// 设置remover for relese app
.defaultDisplayImageOptions(option).build();// 创建执行
ImageLoader.getInstance().init(configuration);
}
#在适配器getView方法中直接写入
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
convertView=View.inflate(context, R.layout.item, null);
ImageView gv_iv = (ImageView) convertView.findViewById(R.id.image);
DisplayImageOptions opction=new DisplayImageOptions.Builder()
.cacheInMemory(true) //缓存到内存
.cacheOnDisc(true) //是否缓存到sd卡
.bitmapConfig(Bitmap.Config.RGB_565) //设置图片的类型
.showImageOnLoading(R.drawable.ic_launcher)
.build();
ImageLoader.getInstance().displayImage(imageUrl[position],gv_iv,opction);
return convertView;
}