小编典典

如何取消选中AlertDialog(setMultiChoiceItems)中的项目?

java

我想清除选定的项目,当总数达到选定的三个项目时,我正在做以下操作,但不起作用…

AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle(getResources().getText(R.string.escolhaArquivosBaixados));
builder.setMultiChoiceItems(items, selected, new DialogInterface.OnMultiChoiceClickListener() {

    @Override
    public void onClick(DialogInterface dialog, int which, boolean isChecked) {
        //                  
        int count = 0;
        for(int i = 1; i < selected.length; i++){
            //
            if (selected[i]){
                count++;
            }
            if (count == 3){
                //enter here but nothing happens
                ((AlertDialog) dialog).getListView().setItemChecked(which, false);
                break;
            }
        }
    }
});

阅读 366

收藏
2020-09-28

共1个答案

小编典典

我意识到我的代码中缺少什么,也需要更改布尔列表。

        selected[which] = false;
        ((AlertDialog) dialog).getListView().setItemChecked(which, false);
2020-09-28