AndroidのListViewを使用してAlertDialogを作成するプロセスは何ですか?
-
01-10-2019 - |
質問
alertdialogを作成するプロセスまたは順序を知りたいです。私がこの質問をする順序は、AlertDialogのリスト項目をフィルタリングして無効にすると思います。これは動的になければなりません。そこで、onpreparedialog(int id、ダイアログダイアログ)メソッドを上書きすることを選択しました。
最初に、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でいくつかのアイテムをファイリングする方法と、いくつかのアイテムを無効にしますが、表示する方法。
解決
私の答えが上にあるかどうかを確認してください: 作成後にalertdialog.builderで構築されたalertdialogリストでアイテムの配列を更新する方法 法案に適合します。少なくとも私のために働いています。
所属していません StackOverflow