У меня есть диалог с парой кнопок и спиннером, который, кажется, работает нормально, за исключением того, что мое приложение падает при следующих обстоятельствах:
1. начать деятельность
2. Показать диалог с Activity :: showDialog (создается в onCreateDialog)
3. нажмите на счетчик, чтобы он показал список
4. spinner устанавливает AlertDialog
5. поверните устройство
6. сбой с IllegalArgumentException
Я вижу, что действие прекратилось, а также исчез мой диалог, но AlertDialog, установленный Spinner, остается. Я бы просто отклонил Spinner AlertDialog, но он является закрытым членом класса Spinner (я проверял исходный код Android), поэтому нет доступа к нему.
Если вы переместите Spinner в Activity, вы получите:
1. начать деятельность
2. нажмите на счетчик, чтобы он показал список
3. spinner устанавливает AlertDialog
4. поверните устройство
5. Спиннер AlertDialog исчезает
6. активность показана повернутой
Я могу только сделать вывод, что либо:
1. вы просто не должны ставить счетчик в диалог (или AlertDialog), или
2. есть ошибка в диалоге или активности
Есть ли у кого-нибудь мудрость в этом вопросе?