知识点一:常规对话框的使用
AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);//实例化对话框
builder.setTitle("设置标题");//设置标题
builder.setMessage("设置标题的内容");//设置标题的内容
builder.setPositiveButton("确定", new OnClickListener() {
//确定按钮监听
@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(MainActivity.this, "确定", 0).show();
}
});
//取消掉按钮监听
builder.setNegativeButton("取消", new OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(MainActivity.this, "取消", 0).show();
}
} );
builder.show();
知识点二:自定义对话框的使用
AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);//实例化对话框
View view = View.inflate(MainActivity.this,R.layout.dialog_view, null);//自定义view实例化
builder.setView(view);//将自定义view加载到对话框中
//dialog.setCanceledOnTouchOutside(false);//点边缘不起作用,点返回键起作用
builder.setCancelable(false);//点边缘不起作用,点返回键不起作用
ok_Btn = (Button) view.findViewById(R.id.dialog_ok);
cancel_Btn = (Button) view.findViewById(R.id.dialog_cancel);
dialogView2 = builder.show();//显示自定义对话框
initEvent(dialogView2);//事件处理
private void initEvent(AlertDialog dialog) {
ok_Btn.setOnClickListener(this);
cancel_Btn.setOnClickListener(this);
}
switch (v.getId()) {
case R.id.dialog_ok:
Toast.makeText(MainActivity.this, "确定", 0).show();
dialogView2.dismiss();//对话框消失
break;
case R.id.dialog_cancel:
Toast.makeText(MainActivity.this, "取消", 0).show();
dialogView2.dismiss();
break;
default:
break;
}
知识点三:触发对话框边缘设置返回键是否有效
AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);//实例化对话框
dialog.setCanceledOnTouchOutside(false);//点边缘不起作用,点返回键起作用
builder.setCancelable(false);//点边缘不起作用,点返回键不起作用