对话框在android开发中有这样几种形式:警告对话框、列表对话框、单选列表对话框、多选列表对话框、滚动条对话框(圆圈和条形两种形式)、自定义对话框、日期对话框、时间对话框。下面我们介绍警告对话框的使用方式。
整体思路:在xml文件中定义一个button控件,并设置它的点击事件,在这个点击事件中定义一个AlertDialog.Builder 对象,设置它的属性、显示对话框并设置它的三个点击按钮的事件:确定、取消、忽略(这个一般用的比较少),在这三个事件中分别对应不同的操作。
MainActivity.java文件:
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
AlertDialog.Builder builder=new AlertDialog.Builder(MainActivity.this);
builder.setTitle("提示");
builder.setMessage("你确定要删除吗?");
builder.setIcon(R.drawable.ic_launcher);
// 次数导入包的时候,要导入android.content.DialogInterface.OnClickListener;而不是View的那个OnClickListener;
// 在上面的button的点击事件的时候,不导入包,直接用View.OnClickListener。
// 给对话框添加积极和消极的点击按钮,用于处理确定和取消的操作
// 一般确定在右边,取消在左边,因为用户习惯这样来使用
builder.setPositiveButton("确定", new OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int arg1) {
// TODO Auto-generated method stub
// 完成用户的操作,比如删除数据、提交请求等操作
dialog.dismiss();//让对话框消失
}
});
builder.setNegativeButton("取消", new OnClickListener() {
@Override
public void onClick(DialogInterface arg0, int arg1) {
// TODO Auto-generated method stub
// 取消用户的操作,比如停止下载等操作
}
});
// 一般使用忽略的这个事件比较少
builder.setNeutralButton("忽略", new OnClickListener() {
@Override
public void onClick(DialogInterface arg0, int arg1) {
// TODO Auto-generated method stub
// 忽略用户的操作
}
});
AlertDialog alertDialog=builder.create();//创建一个dialog
alertDialog.show();//让对话框显示
}
});