码迷,mamicode.com
首页 > 其他好文 > 详细

加载图片的几种方式

时间:2015-10-09 09:16:46      阅读:251      评论:0      收藏:0      [点我收藏+]

标签:

1、volley

VolleyUtils.getLoader(context).get(datas.get(position), ImageLoader.getImageListener(
holder.iv, R.drawable.ic_launcher, android.R.drawable.ic_menu_delete));

2、NUtils

vHolder.coverImgView.setTag(imgPath);

if(imgPath.length()>10){
//存在图片路径
vHolder.coverImgView.setVisibility(View.VISIBLE);

//从SDCard读取,若不存在,再从网络中下载
Bitmap bitmap=ImageUtils.getImg(imgPath);
if(bitmap!=null){
vHolder.coverImgView.setImageBitmap(bitmap);
}else{

NUtils.get(NUtils.TYPE_IMG, imgPath, new NUtils.Callback() {

@Override
public void response(String url, byte[] bytes) {
// TODO 图片下载完成后,进行显示
ImageView imgView=(ImageView) parent.findViewWithTag(url);
if(imgView!=null){
imgView.setImageBitmap(BitmapFactory.decodeByteArray(bytes, 0, bytes.length));
}
}

@Override
public boolean isCancelled(String url) {
// TODO 判断是否取消下载图片
return parent.findViewWithTag(url)==null;
}
});

 

 

 

 

 

3、networkImageView

requestQueue = Volley.newRequestQueue(context);
imageLoader = new ImageLoader(requestQueue,
new ImageLoader.ImageCache() {

// 参数 在没有重写 sizeOf的时候,代表 最多存10个
private LruCache<String, Bitmap> cache = new LruCache<String, Bitmap>(
20);

@Override
public Bitmap getBitmap(String url) {
return cache.get(url);
}

@Override
public void putBitmap(String url, Bitmap bitmap) {
cache.put(url, bitmap);
}

});

holder.iv.setImageUrl(datas.get(position), imageLoader);

 

 

4 ImageLoader

requestQueue = Volley.newRequestQueue(this);

// 1.1 ImageLoader 创建
// 参数1 : 用于实际的网络请求
// 参数2 : ImageCache 内存缓存
imageLoader = new ImageLoader(requestQueue, new ImageLoader.ImageCache() {

// 参数 在没有重写 sizeOf的时候,代表 最多存10个
private LruCache<String, Bitmap> cache = new LruCache<>(10);

@Override
public Bitmap getBitmap(String url) {
return cache.get(url);
}

@Override
public void putBitmap(String url, Bitmap bitmap) {
cache.put(url, bitmap);
}
});


imageLoader.get(
"https://www.baidu.com/img/bd_logo1.png",
ImageLoader.getImageListener(imageView, R.drawable.ic_launcher, android.R.drawable.ic_delete)
);

 

加载图片的几种方式

标签:

原文地址:http://www.cnblogs.com/bimingcong/p/4862833.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!