закончить диалог и активность - PullRequest
3 голосов
/ 03 января 2012

У меня есть действие, которое начинается с alerttdialog

, когда я нажимаю кнопку «назад», только диалог приближается.

Я хочу закрыть и диалог, и действие.

Как это сделать?

Ответы [ 2 ]

10 голосов
/ 03 января 2012

Вы ищете OnCancelListener, который можно установить для Dialog.setOnCancelListener ()

Там вы можете позвонить finish(), что также завершит ваш Activity.

4 голосов
/ 12 апреля 2014

Этот код работает как шарм!

public void showAlertDialog(final Activity activity, String title, String message, Boolean status) {

  AlertDialog alertDialog = new AlertDialog.Builder(activity).create();
        alertDialog.setOnCancelListener(new DialogInterface.OnCancelListener() {
            public void onCancel(DialogInterface dialog) {
                activity.finish();
            }
        });

  alertDialog.show();
}

Я решил всегда получать активность, потому что я всегда отправляю ActivityName.this, а не просто контекст.Но потом я получил контекст.Но здесь я не могу отменить действие только с контекстом, мне нужно действие.Поэтому всегда отправляйте это действие, чтобы иметь возможность манипулировать им извне того же действия.

...