Android对话框总结

确认取消对话框:

AlertDialog.Builder builder = new Builder(this);
    //设置图标
    builder.setIcon(android.R.drawable.alert_dark_frame);
    //设置标题
    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();
        }
    });
    //使用创建器,生成一个对话框对象
    AlertDialog ad = builder.create();
    ad.show();

单选对话框:

AlertDialog.Builder builder = new Builder(this);
    builder.setTitle("请选择性别");
    final String[] items = new String[]{
            "男",
            "女"
    };
    builder.setSingleChoiceItems(items, -1, new OnClickListener() {
        //which:用户所选的条目的下标
        //dialog:触发这个方法的对话框
        @Override
        public void onClick(DialogInterface dialog, int which) {
            Toast.makeText(MainActivity.this, "您选择的是:" + items[which], 0).show();
            //关闭对话框
            dialog.dismiss();
        }
    });
    builder.show();

多选对话框:

AlertDialog.Builder builder = new Builder(MainActivity.this);
    builder.setTitle("谁最帅啊?,请选择!");
    final String[]items = new String[]{
        "凯子",
        "凯哥",
        "richard.zhu",
        "zhukai"
    };
    //默认是否选择
    final boolean [] checkedItems = new boolean[]{
            true,
            false,
            false,
            false
    };
    builder.setMultiChoiceItems(items, checkedItems, new OnMultiChoiceClickListener() {
        //which:用户点击的条目的下标
        //isChecked:用户是选中该条目还是取消该条目
        @Override
        public void onClick(DialogInterface dialog, int which, boolean isChecked) {
            // TODO Auto-generated method stub
            checkedItems[which] = isChecked;
        }
    });
    //设置一个确定按钮
    builder.setPositiveButton("确定", new OnClickListener() {
        @Override
        public void onClick(DialogInterface dialog, int which) {
            // TODO Auto-generated method stub
            String text = "";
            for (int i = 0; i < checkedItems.length; i++) {
                text+=checkedItems[i]?items[i]+",":"";
            }
            Toast.makeText(MainActivity.this, "你选择的是:"+text, Toast.LENGTH_SHORT).show();
            dialog.dismiss();
        }
    });
    builder.show();
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

kevin@1024

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值