Вопрос по android – Android AlertDialog всегда выходит, когда я нажимаю кнопку ОК

1

Есть ли способ сделать проверку при нажатии ОК. Я не отклоняю это, но это закрывается, когда я нажимаю Ок. Я написал собственный AlertDialog, который использует некоторые редактируемые тексты. Проблема в том, что я ничего не могу подтвердить. Если проверка не пройдена, я хочу изменить сообщение и сообщить пользователю, но вместо этого оно просто закрывается. Я использую AlertBuilder

        builder.setPositiveButton(DialogInterface.OnClickListener(){
               @Override
                public void onClick(DialogInterface dialog, int which) {
                  // I don't dismiss here.
                }

           }
вставить код ... !! :) mayank_droid
опубликовать свои ответы. Есть и другие вещи, кроме -1 Code Droid
пара выше комментариев, пожалуйста .... Dhawal Sodha Parmar
опубликовать свой код .... code_finder
Можешь показать код ... SilentKiller

Ваш Ответ

2   ответа
3

переопределив onClickListener. Хитрость заключается в том, чтобы получить кнопку после создания и показа диалога.

//  Create you dialog here and show it
...
dialog.show();

Button positiveButton = dialog.getButton(DialogInterface.BUTTON_POSITIVE);
positiveButton.setOnClickListener(new OnClickListener() {
    @Override
    public void onClick(View onClick) {
        //  Valid checking
        ...

        if (valid) {
            dialog.dismiss();
        } else {
            //  Not valid
        }

    }
});
Кажется, работает теперь, когда я поместил вышеуказанный код после dialog.show () Code Droid
возможно, после показа, а не только после builder.create ()? Code Droid
Ах .. правильно, после создания () и шоу ()
Я сейчас пытаюсь это сделать ... Code Droid
Я думаю, что я получаю нулевое значение за BUTTON_POSITIVE ... Code Droid
-1

он определенно отклонит, хотите вы этого или нет, тогда почему вы задаете этот вопрос, поскольку вы ничего не написали внутри этого метода. так как оно является alerttdialog, оно закроется, и если вы не хотите его закрывать, используйтеsetNeutralButton вместоsetPositiveButton, Не закроется, если вы используете нейтральную кнопку

setNeutralButton также закрывается автоматически Code Droid
Определенно недостаточно просто использовать нейтральный. Code Droid
тогда не используйте Alert Dialog, вместо этого создайте свой собственный диалог
это то, что я говорю, также могут быть причины, по которым они позволяют создавать пользовательские диалоги, когда вы не просто хотите запрашивать у пользователя, когда вы хотите, чтобы пользователь вводил что-то и внутри, которые манипулируют вводом, но вы хотите отображать вывод в том же диалоге, тогда это уже не диалоговое окно оповещения, это просто диалог, диалоговые окна оповещения должны предупреждать пользователей о чем-то. Подобно тому, как мы можем создать диалоговое окно входа, оно должно быть в настраиваемом диалоговом окне, а не в диалоговом окне предупреждения, и оно предоставляет вам все настраиваемое представление, аналогичное настраиваемому представлению списка.
Могут быть причины использовать AlertDialog ... Вместо того, чтобы кататься самостоятельно. Code Droid

Похожие вопросы