2
ダイアログが開いてもチェックボックスをオンにしようとしていますが、setItemCheckedが機能していないようです。私はすでに他の答えをチェックしていますが、それは助けになりません。誰かが私のコードに何か問題があるかどうかを知っていますか?android - setItemCheckedが機能していません
ありがとうございました。原因文の実行時に偽条件に
alertDialogBuilder.setMultiChoiceItems(R.array.list_array, list_values, new DialogInterface.OnMultiChoiceClickListener() {
public void onClick(DialogInterface dialog, int item, boolean isChecked) {
Toast.makeText(getContext(), "You have selected " + list[item], Toast.LENGTH_SHORT).show();
}
});
alertDialogBuilder.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
SparseBooleanArray checkedItems = ((AlertDialog) dialog).getListView().getCheckedItemPositions();
int size = checkedItems.size();
Toast.makeText(getContext(), "Save " + size, Toast.LENGTH_SHORT).show();
}
});
alertDialog = alertDialogBuilder.create();
if (isAlreadyOpened) {
alertDialog.getListView().setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
alertDialog.getListView().setItemChecked(4, true);
}
の作成時にダイアログを表示する前に
はちょうど私はそれが動作するかどうかを確認するif文を削除することで、コードを簡略化し
を設定し、それはまだ動作しません。 ... \t \t alertDialog = alertDialogBuilder.create(); \t \t alertDialog.getListView()。setChoiceMode(ListView.CHOICE_MODE_MULTIPLE); \t \t alertDialog.getListView()。setItemChecked(4、true); alertDialog.show(); – user826323
回避策が見つかりました。 list_valuesのブール値を変更しています。それは私が望むように働いています... – user826323