Альтернативный setButton
Я использую этот код в моем проекте Android:
alertDialog.setButton("OK", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
}
});
Но, Eclipse говорит, что setButton()
устарел. Пожалуйста, помогите мне с альтернативным решением. Спасибо!
Ответы
Ответ 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]()