Android在ListView上取消选中CheckBox

时间:2012-01-11 18:01:43

标签: java android listview adapter

我有一个带有自定义适配器的ListView。它计算CheckBoxes。当其中一个被检查时,我希望其他人不受控制。我尝试创建一个CheckBox列表,然后创建了一个返回此列表的方法,但它一直给出IndexOutOfBounds(我在getView方法中将CheckBoxes添加到列表中)。

This is my adapter

xml:

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >

<CheckBox android:id="@+id/checkBoxListView"
    android:layout_height="50px"
    android:layout_width="50px"/>

<EditText android:id="@+id/editTxtListView"
    android:layout_height="50px"
    android:layout_width="680px"
    android:editable="false"
    android:focusable="false" />    

1 个答案:

答案 0 :(得分:2)

为什么没有一个表示检查位置的全局整数,并且在getview方法中查看全局变量的值和调用getView的位置是否相同,然后勾选复选框,否则取消选中。

在pastebin中看到你的代码。
你正在做一件相当复杂的事情。
无论如何,只是快速评论,不要做 this.pos = position;
在getView()中。

而不是检查 if(postion == this.pos){
//选中此复选框}
否则{
//取消选中此复选框
}

另外,“pos”应由活动控制或pojo本身处理数据列表。