安卓的异步下载(ASYNCHTTPCLIENT以及VOLLEY)

做了一个小案例 从网络上获取图片并加载到viewpager 刚开始使用Asynchttpclient进行数据下载 并且封装了一个类 类里面的一个方法中才是Async的使用 本想着通过封装的这个类的方法的返回值去获得Async的网络请求结果 结果怎么也取不到网络的请求结果 于是便进行调试 过程中发现网络请求确实是请求到了 但是在方法的return的时候 却返回不回去 ,于是才反应过来是线程的原因 后面又查了一下 Async的onsuccess方法是在主线程处理的 对线程只有一定的了解 并没有什么编码经验 所以就放弃了Async

进而研究Volley的使用 ,刚开始打算用for循环 加载imageRequest去取网络图片 一个一个的封装到map中 再将map封装到list中 再将list返回 结果和Async一样 确实 换汤不换药 所以又研究了一下 发现那样是不行的 因为请求成功以后程序自动进入回调方法进入了主线程

最后使用imageloader 并且配合使用lrucache来将图片缓存了下来 

for(int i=0;i<urls.length;i++) {
    ImageView image = new ImageView(getActivity());
    image.setScaleType(ImageView.ScaleType.FIT_XY);

    image.setOnClickListener(new MyClick(i));
    ImageLoader imageLoader = new ImageLoader(requestQueue,bitmapCache);
    ImageListener listener = ImageLoader.getImageListener(image, R.drawable.icon_default, R.drawable.image10);
    imageLoader.get(urls[i], listener);
     views.add(image);
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值