我试图显示简单的检查列表,我需要检查一些项目。
这是我的代码
ArrayAdapter<Task> taskAdapter = new ArrayAdapter<Task>(this, android.R.layout.simple_list_item_checked, tasksList);
this.getListView().setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
this.getListView().setItemChecked(2, true);
setListAdapter(taskAdapter);
<ListView
android:id="@android:id/list"
android:layout_width="match_parent"
android:layout_height="wrap_content">
还是不行。 Checkable 接口(interface)的实现没有帮助。
这个ListView有什么技巧?
最佳答案
在将项目设置为可检查之前,您需要设置适配器。
ArrayAdapter<Task> taskAdapter = new ArrayAdapter<Task>(this, android.R.layout.simple_list_item_checked, tasksList);
setListAdapter(taskAdapter);
this.getListView().setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
this.getListView().setItemChecked(2, true);
适配器包含存储在 ListView 中的数据,因此在设置适配器之前 ListView 中不存在项目 2。
关于Android ListView::setItemChecked 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16989662/