我想知道创建 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 中归档某些项目以及如何禁用但显示某些项目。