关于安卓中的listview的复用的问题

就是在listview上有若干的item,他们结构相同,但是我想让某个item在点击了这个item之后右边多一个文字,但是结果最后一个条目能复用了第一个的,然后结果右边新加的文字也显示出来了。怎么样才能让最后一个条目不复用第一个条目新添加的属性?
如图,后面的已实名是点击了第一个条目新加上的,之前的条目都是像左边那样的

图片说明

8个回答

可以在bean里面加一个isChecked字段来判断哪个item需要显示右边的文字,可以参考博客http://blog.csdn.net/silenceoo/article/details/75577347

亲,这里就体现了开发的习惯问题了。
你在设置数据时,无论textview 或者imageview首先设置为null,
比如,xxx.settext("")之后在设置数据
又如:xxx.setimagebackgroung(null)在设置数据
这些都能防止错乱、服用的bug的,其实说白了,这就是习惯问题

可以在数据里 添加字段 来标识某一控件的状态信息,根据字段的不同值 来做不同的初始化 就可以避免这种问题了

把数据和item绑定在一起,填充数据的时候判断一下就不会出现这种情况了,通过convertview的settag方法去添加标记。还不理解的话推荐看一下这篇处理错乱的文章:http://blog.csdn.net/wwj_748/article/details/43484177

填充数据的时候判断,楼上的博客不错

平常开发中 我顶楼上

给个默认值就好了,就像图片会错乱,你给个默认的背景图

根据状态进行判断,在getview中设置是不是显示,不过楼上回答的都很详细

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐