在我的应用程序中,我有一个多选列表视图(simple_list_item_multiple_choice),我想将用户限制为3个选项。之后 - 如果他从列表中选择另一个选项 - 则不会被标记。
我想用一个计数器(直到三个)来做,但我不知道如何限制第四个选择,所以它不会被标记。
这是我的代码草图:
listview.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) { }
});
如何阻止用户进行第4次选择?
谢谢!
答案 0 :(得分:-1)
每当您尝试检查新位置时,您必须遍历列表中的所有元素并检查它们是否已被选中。如果已检查元素的数量等于已检查元素的最大数量,则不检查按下的位置。我认为没有别的办法可以做到。检查multipleChoiceView文档。我认为这个解决方案最合适。
这里有一些示例,但它是在JavaScript中: How do I limit the number of selected choices in a multi-select list using JavaScript?
您还可以禁用其他复选框: https://ux.stackexchange.com/questions/16659/how-do-i-limit-the-number-of-options-a-user-may-choose-in-a-list
此处还有一些代码: how to limit checkbox selection in listview?
下次在提问之前请做一些研究。