我目前正在使用 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);”,一个是实际选择它。
这已经让我发疯了几天,任何帮助将不胜感激。