现有一个需求:
listview是一个下载列表,每一个item都是一个下载项,item中有一个下载标记A,标明该项是否已经下载过
如果点击该item,则该item中的标记A会替换成进度条的圈圈,下载完毕后,标记A(进度条圈圈)会消失
那么问题就来了,我们的listview的item是经过复用的,那就会导致我点击某个item的时候,下载标志变成了进度条圈圈,然而在还没下载好的时候,我认为拖动了listview
导致了复用的问题,所以会出现有些条目我们没有点击,却显示成正在下载的标记。
解决的方法:
利用一个map集合去记录每一条条目的状态,每次需要getview的时候,就从里面取状态,初始化
private Map<String, Integer> downloadState = new HashMap<String, Integer>();
那么这样就可以为每一条条目单独设置他们的状态了