Я пытаюсь создать AlertDialog с несколькими вариантами выбора. Я пробовал с setMultiChoiceItems
, но у меня есть ArrayList<Category>
, а не CharSequence
, поэтому я попытался с адаптером.Множественный выбор AlertDialog с пользовательским адаптером
Проблема с setAdapter
заключается в том, что, когда я выбираю один элемент, он закрывает диалоговое окно. И я хочу, чтобы выбрать элементы, а затем нажмите кнопку «ОК», чтобы увидеть, какие элементы выбраны.
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("Pick a color");
ArrayAdapter<Category> catsAdapter = new ArrayAdapter<Category>(this, android.R.layout.select_dialog_multichoice,this.categories);
builder.setAdapter(catsAdapter, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int item) {
}
});
builder.setPositiveButton("Save", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
//do something
}
});;
AlertDialog alert = builder.create();
alert.show();
Почему бы не создать динамическое создание настраиваемого вида с помощью переключателей, заполненных вашим ArrayList? Вы можете настроить пользовательский вид для диалогового окна предупреждения, а затем manaully проверить статусы окна в setPositiveButton –
Я хочу код адаптера. Можете ли вы дать мне это? – offset