1

我想知道创建 AlertDialog 的过程或顺序。我问这个问题的顺序是我想过滤和禁用 AlertDialog 中的某些列表项。这必须是动态的。所以我选择覆盖 onPrepareDialog(int id, Dialog dialog) 方法。

首先我在 onCreateDialog(int id) 方法中创建一个 AlertDialog

protected Dialog onCreateDialog(int id) {
    --------

    builder.setMultiChoiceItems(itemsId, checkedItems, mListenter);

    ---------
}


protected void onPrepareDialog(int id, Dialog dialog) {
    -----------
    ListView mListView = ((AlertDialog)dialog).getListView();
    mListView.setItemChecked(0, false);
    mListView.invalidateViews();

    View view = mListView.getChildAt(0);
    -----------
}

但是这些代码不起作用。第一项在我之前检查后仍然被检查。并且第一次显示对话框时 ChildView 为空,为什么?如何在 ListView 中归档某些项目以及如何禁用但显示某些项目。

4

1 回答 1

0

检查并查看我的回答是否符合要求:如何更新创建后使用 AlertDialog.builder 构建的 AlertDialog 列表中的项目数组。至少对我有用。

于 2011-06-23T15:45:01.630 回答