android ImageLoader 缓存下载显示网络图片

第一步

现在你的适配器里面实现ImageLoader.ImageCache这个方法

implements  ImageLoader.ImageCache

第二步

写入需要的方法,代码如下,并在你需要的类的公共方法中加入红色的代码

 private ImageLoader loader;

 private LruCache<String, Bitmap> cache = new LruCache<String, Bitmap>(
   5 << 20) {
  @Override
  protected int sizeOf(String key, Bitmap value) {

   return value.getRowBytes() * value.getHeight();
  }
 };

 public XiangceAdapter(Context context, List<XiangCeClass> list, Userz userz,RequestQueue queue) {
  this.context = context;
  this.list = list;
  this.userz = userz;
  loader=new ImageLoader(queue,this);
  infater = LayoutInflater.from(context);
 }

第三步

修改getBitmap和putBitmap这2个方法,代码如下

public void putBitmap(String url, Bitmap bitmap) {
  File file = new File(context.getCacheDir(), url.substring(url
    .lastIndexOf("/")) + 1);
  try {
   bitmap.compress(Bitmap.CompressFormat.PNG, 80,
     new FileOutputStream(file));
  } catch (FileNotFoundException e) {
   e.printStackTrace();
  }

 }

第四步

加入下面的代码写入在你自己的需要展示图片的地方

 loader.get(
     “网络图片地址”,
     ImageLoader.getImageListener(v.im_xcphoto9,
       R.drawable.ic_launcher,
       R.drawable.ic_launcher), 480, 800);

ps:v.im_xcphoto9 控件自定义名字,480, 800下载时候的宽和高(像素),R.drawable.ic_launcher 图片加载前显示的图

第五步

在你的activity类里面写入如下代码

//声明变量

private RequestQueue requestQueue;

//在onCreateView方法中写入,this即为当前的用的activity

requestQueue = Volley.newRequestQueue(this);

然后在调用适配器的地方加入requestQueue即可实现

XiangceAdapter xc_adapter = new XiangceAdapter(
        context,list_xiangce, userz,requestQueue);

 

ps:需要导入2个jar包 一个是volley,一个是imagelader

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

A HandSome Man

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值