Android обнаружить, если диалог активен? - PullRequest
4 голосов
/ 29 октября 2010

Есть ли общий способ определить, отображается ли в данный момент диалог? Конечно, я могу отслеживать все вызовы createDialog и dismissDialog, но это громоздко.

спасибо

1 Ответ

0 голосов
/ 29 октября 2010

Я использую этот метод:

protected void showDialogSafe(int id) {
    if (!isFinishing()) {
        showDialog(id);
    }
}

Который я взял отсюда: http://daniel -codes.blogspot.com / 2009/12 / actions-and-dialogs.html

При отклонении их я просто ловлю исключение IllegalArgumentException.

Falmarri, отслеживать диалоги, кажется, легче, чем сделать, когда у вас запущено несколько потоков. Я думал, что мой код был идеальным, но я получаю кучу отчетов о сбоях, когда мое приложение пытается закрыть диалоговые окна, которые не отображаются, или пытается отобразить диалог, когда действие завершено.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...