Android AlertDialog对话框

使用AlertDialog.Builder创建对话框需要了解以下几个方法:


setTitle :为对话框设置标题
setIcon :为对话框设置图标
setMessage:为对话框设置内容
setView : 给对话框设置自定义样式
setItems :设置对话框要显示的一个list,一般用于显示几个命令时。
setMultiChoiceItems :用来设置对话框显示一系列的复选框。
setNeutralButton    :
setPositiveButton   :给对话框添加"Yes"按钮
setNegativeButton :对话框添加"No"按钮
create : 创建对话框
show :显示对话框


1、对话框样式1


下面是核心代码

AlertDialog.Builder builer = new AlertDialog.Builder(DialogActivity.this);
builer.setTitle("请回答")
        .setIcon(R.drawable.user)//设置对话框图标
        .setMessage("你觉得我长的帅吗?")
        .setPositiveButton("很帅", new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialog, int which) {
                //这里写一些  点击后的业务代码
                Toast.makeText(DialogActivity.this, "长的帅极了", Toast.LENGTH_SHORT);
            }
        }).setNeutralButton("一般", new DialogInterface.OnClickListener() {
    @Override
    public void onClick(DialogInterface dialog, int which) {
        //这里写一些  点击后的业务代码
        Toast.makeText(DialogActivity.this, "长的一般般", Toast.LENGTH_SHORT);
    }
}).setNegativeButton("很丑", new DialogInterface.OnClickListener() {
    @Override
    public void onClick(DialogInterface dialog, int which) {
        //这里写一些  点击后的业务代码
        Toast.makeText(DialogActivity.this, "用镜子照照自己", Toast.LENGTH_SHORT);
    }
}).show();

对话框样式2


下面是核心代码

final String[] array = new String[]{"男", "女"};
AlertDialog.Builder builder = new AlertDialog.Builder(DialogActivity.this);
builder.setTitle("选择").setItems(array, new DialogInterface.OnClickListener() {
    @Override
    public void onClick(DialogInterface dialog, int which) {
        //这里写一些  点击后的业务代码
        Toast.makeText(DialogActivity.this, array[which], Toast.LENGTH_SHORT);
    }
}).show();

对话框样式3


下面是核心代码

final String[] array3 = new String[]{"男", "女", "人妖"};
AlertDialog.Builder builder3 = new AlertDialog.Builder(DialogActivity.this);
builder3.setTitle("选择")
        .setSingleChoiceItems(array3, 0, new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialog, int which) {
                dialog.dismiss();//关闭对话框
                //这里写一些  点击后的业务代码
                //Toast.makeText(DialogActivity.this,array3[which],Toast.LENGTH_LONG);
            }
        })
        .setCancelable(false)//点击其它空白地方不会关闭对话框
        .show();