public void normalDialog() {
builder = new AlertDialog.Builder(ActivityB.this);
// 设置对话框的图标
// builder.setIcon(R.drawable.ic_launcher);
// builder.setTitle("标准对话框");
builder.setMessage("真的要退出了么~");
// 添加积极按钮
builder.setPositiveButton(R.string.b_positive, myDialogListener);
// // 添加消极按钮
builder.setNegativeButton(R.string.b_nagetive, myDialogListener);
// 用对话框构建器创建对话框
dialog = builder.create();
// 显示对话框
dialog.show();
}
// 对话框的监听器
private DialogInterface.OnClickListener myDialogListener = new DialogInterface.OnClickListener() {
@Override
/**
* 标准对话框的按钮添加单击监听
* dialog: AlertDialog
* which :点击的是哪一个按钮
*/
public void onClick(DialogInterface dialog, int which) {
switch (which) {
case -1:
Toast.makeText(ActivityB.this, "你点了确定按钮", 1).show();
Intent intent = new Intent();
intent.setClass(ActivityB.this, ActivityLogin.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); //注意本行的FLAG设置
startActivity(intent);
finish();
break;
case -2:
Toast.makeText(ActivityB.this, "你点了取消按钮", 1).show();
break;
default:
break;
}
}
};
AlertDialog.Builder对话框没有类似finish()或者dismiss()这样的方法。
但是它的父类AlertDialog有dismiss方法,而且AlertDialog.Builder在.show()的时候会得到一个AlertDialog对象,我们就可以用dismiss方法将该Builder关闭。
dialog.dismiss();