安卓开发之三-——如何解决在listview中适配checkbox,出现多个条目选中的问题
来源:互联网 发布:mac开机出现禁止符号 编辑:程序博客网 时间:2024/06/05 08:06
在使用listview时候,我们会发现现,当listview的布局中使用到了类似于checkbox等在适配时没有更新数据的控件时,会出现点击item时,有多个条目被选中,那么出现这个这个bug的原因是什么呢?我的理解是这样的:先看一段代码
可以很明显的发现,我们为了优化代码,其实在getView()方法中一共创建几个变量,即假设我们在不滑动条目的时候能够看见5个,那么我们最多就可以创建7个(有两个在视图中只是半个item),而其余的item都是引用了之前创建的对象,这样就避免了创建很多view对象,造成内存的消耗。而checkbox等控件在适配数据时,并未进行更改,那么他们指向的地址也只是同一个对象。那么当你选中一个item时,其他相同的item也会被选中,那么怎么解决呢?
首先我们可以这样做,实例化一个list集合,当我们在listview的onitemClick()选中时,将点击位置的position作为一个对象,存储在list中,点击取消时,又将其从list中remove掉,那么我们在进行适配数据的时候,在getview()方法中,进行判断,如果list中有该位置position这个对象,那么我们就将checkbox选中,否则就不选中。上面的代码中已经展示了在getview()中的操作,下面展示的是在onitemclick()事件中的代码:
0 0
- 安卓开发之三-——如何解决在listview中适配checkbox,出现多个条目选中的问题
- 如何在含有checkbox的listview条目中获取到选中的条目信息
- 解决安卓开发中listview与checkbox等控件一起使用的问题
- 解决checkbox在ListView中的选中错乱问题
- 解决listView嵌套CheckBox的选中错乱
- 解决在IE下创建checkbox无法选中的问题
- 解决checkbox在滑动时选中状态错乱的问题
- 如何获取listview里选中的checkbox
- 解决 listview 中添加 checkbox 出现的问题
- 安卓开发之ScrollView嵌套ListView的一些问题和解决
- 关于listview中checkbox的选中问题
- ListView checkbox 重复选中的问题。
- 安卓解决listview的item嵌套多个edittext的问题
- ListView的bug解决,如果有checkbox的话,选中的值在翻屏时会跳来跳去
- 安卓Android开发:listView+checkbox的简单实现
- 安卓开发listview中包含radiogroup选项在滚动时自动选中的解决方法。BaseAdapter,RadioGroup,ListView,ViewHolder
- CheckBox监听显示选中的条目数
- 解决listview条目错乱问题
- poj--1458
- STL之 THE ! LIST!
- @autoreleasepool 重指向的问题, 两个小题 (第二题两个错误)
- J2EE学习之出现乱码的问题
- hdu 4945 2048(DP)
- 安卓开发之三-——如何解决在listview中适配checkbox,出现多个条目选中的问题
- 关于使用PPP方式网络的宿主机中虚拟机架设linux服务器
- SDUT (并查集+哈希)
- Python3基础(七) I/O操作
- Spring笔记(8)--------<bean>之间的关系
- 完整java开发中JDBC连接数据库代码和步骤
- POJ-1986(树节点间距离,Tarjan算法 + 数组邻接表)
- mysql全局编码格式修改和数据库实例的编码格式修改
- 分布式设计与开发(一)------宏观概述