我想知道创建AlertDialog的过程或顺序。我问这个问题的顺序是我想过滤和禁用AlertDialog中的一些列表项。它必须是动态的。所以我选择覆盖onPrepareDialog(int id,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为null,为什么? 如何在ListView中提交一些项目以及如何禁用但显示一些项目。
答案 0 :(得分:0)
检查并查看我在How to update array of items in an AlertDialog list built with AlertDialog.builder after creation的回答是否符合要求。它至少对我有用。