Как предотвратить закрытие диалогового окна с помощью кнопки «Назад» - PullRequest
18 голосов
/ 19 августа 2011

У меня есть диалоговое окно с предупреждением, подобное этому:

    AlertDialog.Builder oyunaBaslaDialog = new AlertDialog.Builder(this);
    oyunaBaslaDialog.setMessage("A Takımı");
    oyunaBaslaDialog.setNeutralButton("Başla!",
            new DialogInterface.OnClickListener() {
                public void onClick(DialogInterface arg0, int arg1) {
                    oyunOyna();
                }
            });
    oyunaBaslaDialog.show();

Это диалоговое окно отображается в методе onCreate.И я хочу, чтобы он просто закрывался кнопкой на нем.Но аппаратная кнопка «Назад» также может закрыть это диалоговое окно без выполнения действия.

Я не хочу, чтобы кнопка «Назад» закрывала это диалоговое окно, что я могу сделать?

Ответы [ 3 ]

58 голосов
/ 19 августа 2011

Использовать Dialog.setCancelable () :

Устанавливает, можно ли отменить это диалоговое окно клавишей BACK.

В вашем коде это будетбыть:

oyunaBaslaDialog.setCancelable(false);
10 голосов
/ 19 августа 2011

Реализуйте setOnKeyListener и перехватите KeyEvent.KEYCODE_BACK. Если вы вернете true в этом методе, диалог не закроется.

0 голосов
/ 01 октября 2014

есть метод, называемый bulder.setCancelable(). По умолчанию этот отменяемый набор ' true '. Переопределите его с помощью

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