Подтвердить что ты не робот

Альтернативный setButton

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

alertDialog.setButton("OK", new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int which) {
        }
    });

Но, Eclipse говорит, что setButton() устарел. Пожалуйста, помогите мне с альтернативным решением. Спасибо!

4b9b3361

Ответ 1

AlertDialog.Builder builder = new AlertDialog.Builder(activity);
        builder.setTitle("ALERTTILESTRING")
        .setMessage("alertNameString")
        .setCancelable(false)
        .setNegativeButton("Close",new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int id) {
                dialog.cancel();
            }
        });
        AlertDialog alert = builder.create();
        alert.show();
    }

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

Ответ 2

setButton() - это не то, что устарело, а комбинация функций + аргументов. Существует еще setButton(), но вам нужно указать идентификатор кнопки в качестве первого аргумента для setButton():

alertDialog.setButton(0, "OK", new DialogInterface.OnClickListener() {
    public void onClick(DialogInterface dialog, int which) {
      <do something>;
    }
});

Это полезно, если вы хотите дать всем своим кнопкам тот же OnClickListener:

class alertDialogOnClickListener implements DialogInterface.OnClickListener {
    public void onClick(DialogInterface dialog, int which) {
        switch(which){
            case 1:
                <do something>;
                break;
            case 2:
                <do something>;
                break;
        }
    }
}
alertDialog.setButton(1, "OK", new alertDialogOnClickListener());
alertDialog.setButton(2, "Cancel", new alertDialogOnClickListener());

Ответ 3

Использование: setButton(int whichButton, CharSequence text, DialogInterface.OnClickListener listener);

Для whichButton используйте одно из следующих действий:

DialogInterface.BUTTON_POSITIVE 
DialogInterface.BUTTON_NEGATIVE
DialogInterface.BUTTON_NEUTRAL 

Ответ 4

AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
            builder.setTitle("Alert");
            builder.setIcon(R.drawable.ic_launcher);
            builder.setMessage("Attention");
            builder.setPositiveButton("Get Location",
                    new DialogInterface.OnClickListener() {
                        public void onClick(DialogInterface dialog, int id) {
                            dialog.cancel();

                        }
                    });

            builder.setNeutralButton("Set Location",
                    new DialogInterface.OnClickListener() {
                        public void onClick(DialogInterface dialog, int id) {



                        }
                    });

            builder.setNegativeButton("Exit",
                    new DialogInterface.OnClickListener() {
                        public void onClick(DialogInterface dialog, int id) {
                            dialog.cancel();

                        }
                    });
            builder.show();

Ответ 5

Используйте это и установите положительную или отрицательную кнопку

setButton (int whichButton, текст CharSequence, прослушиватель DialogInterface.OnClickListener);

ссылайтесь на это http://developer.android.com/reference/android/app/AlertDialog.html#setButton(int, java.lang.CharSequence, android.content.DialogInterface.OnClickListener)

Ответ 6

Вот моя короткая и сладкая, оптимизация Android Developer. Это более красноречиво и использует меньше памяти.

    (new AlertDialog.Builder(/*activity*/))
    .setTitle("ALERTTILESTRING")
    .setMessage("alertNameString")
    .setCancelable(false)
    .setNegativeButton("Close",new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int id) {
            dialog.cancel();
        }
    })
    /*insert other Alert Dialog Builder methods here*/
    .show();

Ответ 7

вы можете установить три типа кнопок с помощью alertDialog

.setPositiveButton("name_of_button",LISTENER);

.setNegativeButton("name_of_button",LISTENER);

.setNeutralButton("name_of_button",LISTENER);

Слушатель может быть вне класса или анонимного класса, например

.setNegativeButton("Cancel",new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int id) {
            alertDialog.cancel();
        }
    });

Ответ 8

Хорошее сообщение от Tony Stark здесь, и вы можете украсить свой диалог, добавив значок. Убедитесь, что у вас есть изображение в вашей папке с выделением.

 builder.setTitle("Message Sent!").setCancelable(false).setNegativeButton("Close",new DialogInterface.OnClickListener() 
                            {public void onClick(DialogInterface dialog, int id) {dialog.cancel();}});
                            AlertDialog alert = builder.create();
                            alert.setIcon(R.drawable.send);//call your image for your icon here
                            alert.show();

Пример enter image description here