android中如何获得listview中的checkbox的值?

苏谷子 发布于 2013/01/28 11:23
阅读 2K+
收藏 0

大概情景:在做一个文件浏览器。listview显示所有的文件。如果是文件,点击打开。如果是文件夹,递归显示目录下的文件。

遇到的问题:通过listview和checkbox实现批量删除。checkbox初始状态gone,用户选择批量操作后,显示checkbox,然后选择要删除的item。这里如果在xml中设置checkbox的属性android:clickable="false",会影响到文件的操作,比如会弹出打开或者递归目录的问题。如果不设置,响应事件又被checkbox截获,没法得到item的值。后来,有想到可以直接在用户做出最终操作时去遍历所有item并判断checkbox状态,但是这里不知道如果得到listview中checkbox对象。所以想大家请教一下应该如何处理。

做过的努力:已经找了写例子看了,多是checkbox直接就是显示出来的,而且也是单独的demo,并没有和具体的业务连起来,不太合适。


加载中
0
fneg
fneg
ListView 里面有一个Mulit-Chiose模式,比CheckBox好用
0
kongnanlive
kongnanlive

引用来自“fneg”的答案

ListView 里面有一个Mulit-Chiose模式,比CheckBox好用
Mulit-Chiose在4.1和4.2下有问题,如果是自定义适配器的话。
0
白学原
白学原
item布局中添加 android_descendantFocusability="blocksDescendants"
0
苏谷子
苏谷子
没想到好的方法, 现在的做法,就是在itme点击后,做判断。如果checkbox已经显示出来了,就让checkbox可以被选中,然后把选择的checkbox的对应值放到list中。
返回顶部
顶部