我有一个带有自定义适配器的ListView
。它计算CheckBoxes。当其中一个被检查时,我希望其他人不受控制。我尝试创建一个CheckBox
列表,然后创建了一个返回此列表的方法,但它一直给出IndexOutOfBounds(我在getView方法中将CheckBoxes添加到列表中)。
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" />
答案 0 :(得分:2)
为什么没有一个表示检查位置的全局整数,并且在getview方法中查看全局变量的值和调用getView的位置是否相同,然后勾选复选框,否则取消选中。
在pastebin中看到你的代码。
你正在做一件相当复杂的事情。
无论如何,只是快速评论,不要做 this.pos = position;
在getView()中。
而不是检查 if(postion == this.pos){
//选中此复选框}
否则{
//取消选中此复选框
}
另外,“pos”应由活动控制或pojo本身处理数据列表。