下载 >  移动开发 >  Android > listview 图片异步加载 图片错位 软引用 getView调用次数 convertView重用

listview 图片异步加载 图片错位 软引用 getView调用次数 convertView重用

ListView异步加载图片,图片错位问题解决方案

 * 问题分析:我们在使用AsyncTask异步下载图片的时候,经常会用到convertView的重用,一般情况下,滑动后第一个可见的元素(我们给它命个名,称为A1)和
 * listview的第一个元素(A)是公用一个convertView的(一般情况),此时问题就来了,如果异步下载图片执行的比较慢,第一个元素对应的url
 * 下载的图片会放到第一个元素上面还是滑动后第一个可见的元素上面呢?
 * 解决方案:给每个listview的ImageView设置tag,使用findViewWithTag()的方式来得到ImageView,此时图片就不会产生错位了。而且
 * 值得注意的是,由于A和A1使用同一个convertView,因此如果A中的ImageView已经有值得话,当A2展示的并且它所对应的图片还未加载完成的时候,
 * A2会显示A上的图片,这明显是不对的,因此我们这里给它设置一个默认的icon,即mHolder.mImageView.setImageResource(R.drawable.ic_launcher);
 * 思路简介:一般listview中涉及到图片加载的,为了提高用户体
                            验,一般会使用一个软引用和存文件的方式来实现。不过还见过这样来实现的:即用一个HashMap来存放很小一部分的数据,
 * 当HashMap中的大小达到一定的值时,清空HashMap,并且将数据放入软应用中。
 * 注意操作sdcard权限已经网络访问权限的加入                        
...展开收缩
综合评分:4
开通VIP 立即下载

评论共有41条

Mr_Fingerling 2015-09-06 12:47:56
并不能解决我的问题
妇校长啊 2015-06-27 14:52:14
很不错 有帮助
lianjiuxiao 2015-05-10 15:20:41
解决了一部分问题,不过我的listview的填充方式和你的不一样
 
Android ListView的性能优化(ViewHolder和HashMap)
ListView异步加载图片--图片缓存和错位问题解决方案
BaseAdapter——convertView回收机制与动态控件响应---源码 立即下载
积分/C币:5
android GridView分组 convertview可重用 可用于 图片相册 内存消耗低 立即下载
积分/C币:3
Android GridView 多标题分组显示,上下拉刷新,convertview可重用 立即下载
积分/C币:5
ListView多条目显示 立即下载
积分/C币:3
MultipleItemList 立即下载
积分/C币:3
listView中多个listItem布局时,convertView缓存及使用 立即下载
积分/C币:3
ListView控件 立即下载
积分/C币:3
通用adapter 立即下载
积分/C币:0

VIP会员动态

0 1 2
关闭
img

spring mvc+mybatis+mysql+maven+bootstrap 整合实现增删查改简单实例.zip

资源所需积分/C币 当前拥有积分 当前拥有C币
5 0 0
点击完成任务获取下载码
输入下载码
为了良好体验,不建议使用迅雷下载
img

listview 图片异步加载 图片错位 软引用 getView调用次数 convertView重用

会员到期时间: 剩余下载个数: 剩余C币: 剩余积分:0
为了良好体验,不建议使用迅雷下载
VIP下载
您今日下载次数已达上限(为了良好下载体验及使用,每位用户24小时之内最多可下载20个资源)

积分不足!

资源所需积分/C币 当前拥有积分
您可以选择
开通VIP
4000万
程序员的必选
600万
绿色安全资源
现在开通
立省522元
或者
购买C币兑换积分 C币抽奖
img

资源所需积分/C币 当前拥有积分 当前拥有C币
5 4 45
为了良好体验,不建议使用迅雷下载
确认下载
img

资源所需积分/C币 当前拥有积分 当前拥有C币
5 0 0
为了良好体验,不建议使用迅雷下载
开通VIP
img

资源所需积分/C币 当前拥有积分 当前拥有C币
5 4 45
您的积分不足,将扣除 10 C币
为了良好体验,不建议使用迅雷下载
确认下载
下载
无法举报自己的资源

兑换成功

你当前的下载分为234开始下载资源
你还不是VIP会员
开通VIP会员权限,免积分下载
立即开通

你下载资源过于频繁,请输入验证码

您因违反CSDN下载频道规则而被锁定帐户,如有疑问,请联络:webmaster@csdn.net!

举报

若举报审核通过,可返还被扣除的积分

  • 举报人:
  • 被举报人:
  • 举报的资源分:
  • *类型:
  • *详细原因: