Урок 64. Диалоги. AlertDialog. Список с множественным выбором
Урок 64. Диалоги. AlertDialog. Список с множественным выбором
В этом уроке:
- формируем список с множественным выбором в диалоге
[url=http://www.startandroid.ru/ru/uroki/vse ... l:nnx3utwj]Click here to read this article![/url:nnx3utwj]
- формируем список с множественным выбором в диалоге
[url=http://www.startandroid.ru/ru/uroki/vse ... l:nnx3utwj]Click here to read this article![/url:nnx3utwj]
Последний раз редактировалось damager82 12 май 2017, 11:55, всего редактировалось 7 раз.
- KamiSempai
- Сообщения: 1339
- Зарегистрирован: 17 фев 2012, 21:23
- Откуда: Мордор
Re: Урок 64. Диалоги. AlertDialog. Список с множественным вы
Понадобилось использовать диалог с множественным выбором, наткнулся на проблему. Диалог создается единожды в onCreateDialog и при следующем его вызове onCreateDialog не вызывается. Следовательно содержимое диалога остается прежним, а мне нужно периодически добавлять и удалять некоторые строки.
Использую вариант с DIALOG_ITEMS.
Использую вариант с DIALOG_ITEMS.
R.id.team
Хватит таскать макулатуру на тренировку! Используй T Note.
Хватит таскать макулатуру на тренировку! Используй T Note.
Re: Урок 64. Диалоги. AlertDialog. Список с множественным вы
В 62 уроке я рассматривал такую возможность. Или это не то?KamiSempai писал(а):Понадобилось использовать диалог с множественным выбором, наткнулся на проблему. Диалог создается единожды в onCreateDialog и при следующем его вызове onCreateDialog не вызывается. Следовательно содержимое диалога остается прежним, а мне нужно периодически добавлять и удалять некоторые строки.
Использую вариант с DIALOG_ITEMS.
- KamiSempai
- Сообщения: 1339
- Зарегистрирован: 17 фев 2012, 21:23
- Откуда: Мордор
Re: Урок 64. Диалоги. AlertDialog. Список с множественным вы
В этом случае прийдется писать свой адаптер с мультивыбором.
R.id.team
Хватит таскать макулатуру на тренировку! Используй T Note.
Хватит таскать макулатуру на тренировку! Используй T Note.
Re: Урок 64. Диалоги. AlertDialog. Список с множественным вы
Можно удалять диалог и каждый раз заново создавать.KamiSempai писал(а):В этом случае прийдется писать свой адаптер с мультивыбором.
- KamiSempai
- Сообщения: 1339
- Зарегистрирован: 17 фев 2012, 21:23
- Откуда: Мордор
Re: Урок 64. Диалоги. AlertDialog. Список с множественным вы
Я тут подумал, наверное я все же свой адаптер напишу. Ситуация очень необычная. Строки хранятся в базе данных, а отмеченные строки в переменной String через запятую. Порежу строку на ArrayList и буду хранить в нем только отмеченные.
R.id.team
Хватит таскать макулатуру на тренировку! Используй T Note.
Хватит таскать макулатуру на тренировку! Используй T Note.
Re: Урок 64. Диалоги. AlertDialog. Список с множественным вы
Почему когда открываем подключение к БД мы вызываем остановку работы с Курсором stopManagingCursor(cursor); ?
// открываем подключение к БД
db = new DB(this);
db.open();
stopManagingCursor(cursor);
cursor = db.getAllData();
}
Кто-нибудь...
// открываем подключение к БД
db = new DB(this);
db.open();
stopManagingCursor(cursor);
cursor = db.getAllData();
}
Кто-нибудь...
Re: Урок 64. Диалоги. AlertDialog. Список с множественным вы
Почему stopManagingCursor(cursor); а не startManagingCursor(cursor); ?
Re: Урок 64. Диалоги. AlertDialog. Список с множественным вы
Это ошибка. Я пофиксил, спасибо!Natalia писал(а):Почему stopManagingCursor(cursor); а не startManagingCursor(cursor); ?
Re: Урок 64. Диалоги. AlertDialog. Список с множественным вы
Подскажите, возможно ли в методе вместо аргумента isCheckedColumn подсунуть как-нибудь обычный массив, в котором хранятся отмеченные позиции из диалога?
Код: Выделить всё
setMultiChoiceItems(cursor, isCheckedColumn, labelColumn, listener)
Re: Урок 64. Диалоги. AlertDialog. Список с множественным вы
а ты попробуй
R.id.team
NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198
NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198
Re: Урок 64. Диалоги. AlertDialog. Список с множественным вы
В обработчике для списка курсора строка: ListView lv = ((AlertDialog) dialog).getListView(); лишняя, ведь lv в этом примере не используется.
В обработчике нажатия на кнопку Log.d("qwe", "checked: " + key); наверно вместо "qwe" должно быть LOG_TAG.
В обработчике нажатия на кнопку Log.d("qwe", "checked: " + key); наверно вместо "qwe" должно быть LOG_TAG.
Re: Урок 64. Диалоги. AlertDialog. Список с множественным вы
Хотел спросить,почему при использовании Item не надо соединяться с базой данных чтобы обновить состояние, а при Cursor нужно постоянно обновлять базу данных при каждом выделении ?
Re: Урок 64. Диалоги. AlertDialog. Список с множественным вы
Потому что в БД есть столбец Checked и нужно менять в нем поле true/false в зависимости от того, что в диалоге в чекбоксе. А при использовании Item мы вообще с БД не работаем. Ну и списки в двух этих диалогах не связаны между собой.Al3x3i писал(а):Хотел спросить,почему при использовании Item не надо соединяться с базой данных чтобы обновить состояние, а при Cursor нужно постоянно обновлять базу данных при каждом выделении ?