图片加载几种框架

1.universal-image-loader

首先在application中进行相关配置,为了防止图片过大时候滑动卡顿,配置如下:

ImageLoader.getInstance().init(ImageLoaderHelper.getInstance(this).getImageLoaderConfiguration(ApiConstants.Paths.IMAGE_LOADER_CACHE_PATH));
双缓存,内存缓存,加sd卡缓存。具体配置详见项目。

用法:

ImageLoader.getInstance().displayImage(bankList.get(position).getImageUrl(), viewHolder.img);

2.Picasso

as中谷歌自带的图片缓存

用法:

 Picasso.with(context).load(bankList.get(position).getThumbnailUrl()).into(viewHolder.img);
3. fresco

由facebook出的缓存框架,支持圆形图片

application中进行配置

Fresco.initialize(getApplicationContext());

用法:在布局文件中加载它的imageview,然后代码中正常加载即可

 viewHolder.img.setImageURI(Uri.parse(bankList.get(position).getUrl()));
4.volley

bitmapUtils = new BitmapUtils(context,context.getCacheDir().getPath());
bitmapUtils.display(viewHolder.img, bankList.get(position).getUrl());

5.Glide

// For a simple view:
@Override
public  void  onCreate(Bundle savedInstanceState) {
     ...
 
     ImageView imageView = (ImageView) findViewById(R.id.my_image_view);
 
     Glide.with( this ).load( "http://goo.gl/h8qOq7" ).into(imageView);
}
 
// For a list:
@Override
public  View getView( int  position, View recycled, ViewGroup container) {
     final  ImageView myImageView;
     if  (recycled ==  null ) {
         myImageView = (ImageView) inflater.inflate(R.layout.my_image_view,
                 container,  false );
     else  {
         myImageView = (ImageView) recycled;
     }
 
     String url = myUrls.get(position);
 
     Glide.with(myFragment)
         .load(url)
         .centerCrop()
         .placeholder(R.drawable.loading_spinner)
         .crossFade()
         .into(myImageView);
 
     return  myImageView;
}





  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值