【发布时间】:2016-08-23 07:29:28
【问题描述】:
有没有办法在单击中性按钮或否定按钮时覆盖警报对话框的行为以不自动关闭。
final AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setCancelable(false);
builder.setTitle("Title");
builder.setPositiveButton("Done", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
// do something and close dialog
}
});
builder.setNeutralButton("Clear All", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
// do something but not close dialog
}
});
builder.setMultiChoiceItems(items, checkedItems, new DialogInterface.OnMultiChoiceClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int which, boolean isChecked) {
if(isChecked){
// do something
} else {
// do something else
}
}
});
final AlertDialog dialog = builder.create();
dialog.show();
此处否定按钮的预期行为是:单击“清除全部”时,它应该只清除全部选择,而不是自动关闭对话框。?但 Android alertDialog 会在点击 NegativeButton 或 NeutralButton 时自动关闭对话框。任何覆盖此行为的方法
【问题讨论】:
标签: java android android-alertdialog