我目前正在使用AlertDialog.builder为用户创建多选列表(复选框).这很好用,除了我们想要其中一个按钮取消选择列表中的所有其他按钮.
builder.setMultiChoiceItems(list,checked,new DialogInterface.OnMultiChoiceClickListener() { public void onClick(DialogInterface dialog,int item,boolean isChecked) { if(item == ANY_ITEM_BUT_0) { ((AlertDialog) dialog).getListView().setItemChecked(0,false); } } });
当使用“true”时它将成功检查该框,但是当使用false时它不会取消选中它(除非我手动将其手动设置为true.)是否有一个单独的监听器我应该用来检测用户何时单击这些?在我看来,有两个复选标记设置,一个由“setItemChecked(0,true);”,一个通过实际选择它.
这已经让我疯了几天了,任何帮助都会非常感激.
解决方法
哦!!!我忘了它以确保取消选择你必须将checked更改为null;),我有同样的问题.
builder.setMultiChoiceItems(list,null,new DialogInterface.OnMultiChoiceClickListener() { ...