Android第三方开源ImageLoader的使用(一)

前提准备(下载ImageLoager的Library):

http://download.csdn.net/detail/qq_29461259/9197705

Demo源码下载地址

Step1:在application中初始化ImageLoader的配置

<span style="font-size:14px;">public class MyApplication extends Application {

	@Override
	public void onCreate() {
		//配置ImageLoaderConfiguration
		initImageLoader(this);
	}

	public static void initImageLoader(Context context) {
		// This configuration tuning is custom. You can tune every option, you may tune some of them,
		// or you can create default configuration by
//		  ImageLoaderConfiguration.createDefault(this);
		// method.
		ImageLoaderConfiguration.Builder config = new ImageLoaderConfiguration.Builder(context);
		config.threadPriority(Thread.NORM_PRIORITY - 2);//配置下载图片的线程优先级
		config.denyCacheImageMultipleSizesInMemory();//不会在内存中缓存多个大小的图片
		config.diskCacheFileNameGenerator(new Md5FileNameGenerator());//为了保证图片名称唯一
		config.diskCacheSize(50 * 1024 * 1024); // 50 MiB
		//内存缓存大小默认是:app可用内存的1/8
		config.tasksProcessingOrder(QueueProcessingType.LIFO);</span>
Step2:定义加载大图还是小图对应的options

<span style="font-size:14px;">public class ImageLoaderOptions {
	//在显示小图的选项
	public static DisplayImageOptions list_options = new DisplayImageOptions.Builder()
			.showImageOnLoading(R.drawable.ic_default)// 加载过程中显示什么图片
			.showImageForEmptyUri(R.drawable.ic_default)// url为空的时候显示什么图片
			.showImageOnFail(R.drawable.ic_default)// 加载失败显示什么图片
			.cacheInMemory(true)// 在内存缓存
			.cacheOnDisk(true)// 在硬盘缓存
			.considerExifParams(true)// 会识别图片的方向信息
			.displayer(new FadeInBitmapDisplayer(500)).build();// 渐渐显示的动画
	// .displayer(new RoundedBitmapDisplayer(100)).build();//显示圆角或圆形图片

	//在显示大图的时候的选项,
	public static DisplayImageOptions pager_options = new DisplayImageOptions.Builder()
			.showImageForEmptyUri(R.drawable.ic_default)
			.showImageOnFail(R.drawable.ic_default)
			.resetViewBeforeLoading(true)//在ImageView显示图片之前先清空已有的图片内容
			.cacheOnDisk(true)
			.imageScaleType(ImageScaleType.EXACTLY)//会进一步将按照ImageView的宽高来缩放
			.bitmapConfig(Bitmap.Config.RGB_565)//设置颜色的渲染模式,是比较节省内存的模式
			.considerExifParams(true)
			.displayer(new FadeInBitmapDisplayer(300)).build();</span>
}

Step3:获取ImageLoader实例并加载图片

<span style="font-size:14px;">public class MainActivity extends Activity {

	private int length;
	private ImageLoader imageLoader;


	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		//要显示的图片个数
		length = Images.imageUrls.length;
		//获取imageloader
		imageLoader = ImageLoader.getInstance();
		
		ListView listview = (ListView) findViewById(R.id.listview);
		MyAdapter MyAdapter = new MyAdapter();
		listview.setAdapter(MyAdapter);
	}
	
	
	class MyAdapter extends BaseAdapter{

		@Override
		public int getCount() {
			return length;
		}

		@Override
		public Object getItem(int position) {
			return null;
		}

		@Override
		public long getItemId(int position) {
			return 0;
		}

		@Override
		public View getView(int position, View convertView, ViewGroup parent) {
			View view = View.inflate(getApplicationContext(), R.layout.activity_iamgevie, null);
			ImageView iamgeview  = (ImageView) view.findViewById(R.id.imageView);
			imageLoader.displayImage(Images.imageUrls[position], iamgeview, ImageLoaderOptions.pager_options);
			return view;
		}
		
	}
	
}</span>




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值