2010-03-16 2 views
1

Я пытаюсь перенести одно из моих приложений iPhone на Android. Все это проходило плавно, пока я не пришел в AlertDialogs. В приложении iPhone иногда может быть передано несколько предупреждений пользователю. Когда это произойдет, появится первое диалоговое окно с предупреждением, и когда они нажмут на него, появится следующий. Кажется, я не могу получить более одного диалогового окна, чтобы это произошло в Android. Можно ли отображать спину к спине AlertDialogs, где второй появляется, как только первый закончен?Как отображать последовательные AlertDialogs в Android?

+1

Может быть, немного не по теме, но я предполагаю, что есть лучший интерфейс для того, что вы пытаетесь сделать - это не включает в себя два последовательных AlertDialogs :-) –

+0

Это действительно не два подряд, как что. Что происходит, когда пользователь нажимает кнопку и появляется диалоговое окно, и говорит, что это будет стоить им такой и такой суммы, чтобы совершить поездку, и текущий день закончится, и спросит их, хотят ли они продолжить. После того, как они нажимают «да», запускается другая функция, и если они атакованы, появляется диалоговое окно, чтобы сообщить им. Таким образом, диалоги на самом деле не в одно и то же время, они просто спина к спине. Они должны быть отделены друг от друга, потому что вам нужно нажать «Да» на один, пока другой не будет вызван. Но второй никогда не проявляется. – John

ответ

0

Вы выполнить 2 последовательных вызова «ShowDialog()» после того, как друг друга, а второй будет показывать после первого был уволен:

showDialog(FIRST_DIALOG_ID); 
showDialog(SECOND_DIALOG_ID); 

Ofcourse вы также должны реализовать onCreateDialog().

+0

Спасибо. Я закончил работу над этим, добавив второй диалог в другое действие и загрузив его, когда первый был закрыт, но я буду помнить об этом, если ситуация снова возникнет. – John

+0

Несколько действий для нескольких диалогов (оповещения)? Это кажется большой нагрузкой (память, загрузка, процессор, ...) для такой простой задачи. Вы также можете реализовать свою собственную очередь для отображения диалогов. – MrSnowflake