[Android] Alertdialog возвращает логическое значение onclick - PullRequest
0 голосов
/ 22 июля 2011

У меня проблема с AlertDialog: мне бы хотелось, чтобы мой AlertDialog возвращал значение true, если пользователь нажимал кнопку «Позитив», и значение false, если он нажимал кнопку «негатив».Функция должна блокировать программу, пока пользователь не нажмет кнопку.

Мой код:

public static boolean errorMD5(Context context){
    AlertDialog.Builder builder = new AlertDialog.Builder(context);
    builder.setTitle(context.getString(R.string.error));
    builder.setIcon(android.R.drawable.ic_dialog_alert);
    builder.setMessage(R.string.errorMD5);
    builder.setPositiveButton(R.string.retry, new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int which) {
            //The function return true
        }
    });
    builder.setNegativeButton("No", new DialogInterface.OnClickListener() {         
            @Override
            public void onClick(DialogInterface arg0, int arg1) {
               //The function return false                    
            }
    });
    AlertDialog alert = builder.create();
    alert.show();
}

1 Ответ

1 голос
/ 22 июля 2011

В своей деятельности вы должны реализовать 2 функции.

 onYesPressed() and onNoPressed()

и вызывать их из диалогового окна.

Или вы можете реализовать только функцию, которая принимает логический параметр

    onUserDismissDialog(boolean allow)

и вызовите эту функцию из вашего диалога OnClickListener.

...