android 常见的对话框 普通对话框+单选对话框+多选对话框+进度条对话框

本文详细介绍了Android中四种常见对话框的使用方法,包括普通对话框、单选对话框、多选对话框和进度条对话框。通过具体代码示例,展示了如何创建和定制这些对话框,为开发者提供实用指南。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

        android 常见的对话框 普通对话框+单选对话框+多选对话框+进度条对话框

     对话框是项目开发中比较常见的控件,基本每个APP都会用到对话框,相信大家对对话框也能轻松的使用,我的项目中也用到了对话框,个人觉得还是记录下来比较好,方便以后忘记的时候查看

普通对话框:

  AlertDialog.Builder builder=new AlertDialog.Builder(this);
        builder.setTitle("标题")
                .setMessage("内容")
                .setPositiveButton("确定", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        dialog.dismiss();
                        Toast.makeText(MainActivity.this, "点击了确定按钮", Toast.LENGTH_SHORT).show();
                    }
                }).setNegativeButton("取消", new DialogInterface.OnClickListener() {
                     @Override
                     public void onClick(DialogInterface dialog, int which) {
                         dialog.dismiss();
                         Toast.makeText(MainActivity.this, "点击了取消按钮", Toast.LENGTH_SHORT).show();
                     }
                 });
        builder.show();

 单选对话框:

 //通过builder 构建器来构造
        AlertDialog.Builder builder=new AlertDialog.Builder(this);
        final String items[] = {"语文","数学","英语","生物","历史","地理"};
        builder.setTitle("请选择你的学习的课程")
                //-1代表没有条目被选中
                .setSingleChoiceItems(items, -1, new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        //[1]把选择的条目给取出来
                        String item = items[which];

                        Toast.makeText(getApplicationContext(), item, Toast.LENGTH_LONG).show();

                        //[2]把对话框关闭
                        dialog.dismiss();

                    }
                });
        //最后一步 一定要记得  和Toast 一样  show出来
        builder.show();

多选对话框:

 //通过builder构建出来
        AlertDialog.Builder builder=new AlertDialog.Builder(this);
        //对话框标题
        builder.setTitle("请选择你爱吃的水果");
        //设置多选对话框的item
        final String items[] = {"香蕉","黄瓜","哈密瓜","西瓜","梨","柚子","榴莲"};
        //设置默认的选中状态
        final boolean[] checkedItems={true,false,false,false,false,false,true};
        builder.setMultiChoiceItems(items, checkedItems, new DialogInterface.OnMultiChoiceClickListener() {
            @Override
            public void onClick(DialogInterface dialog, int which, boolean isChecked) {
                //dialog.dismiss();
            }
        });
        builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {

            @Override
            public void onClick(DialogInterface dialog, int which) {

                //把选中的 条目的数据给我取出来

                StringBuffer sb = new StringBuffer();
                for (int i = 0; i < checkedItems.length; i++) {

                    //判断一下 选中的
                    if (checkedItems[i]) {

                        String fruit = items[i];
                        sb.append(fruit + "  ");
                    }

                }
                Toast.makeText(getApplicationContext(), sb.toString(), Toast.LENGTH_LONG).show();
                //关闭对话框
                dialog.dismiss();
            }
        });
        //最后一步 一定要记得  和Toast 一样  show出来
        builder.show();

进度条对话框 :

  final ProgressDialog dialog=new ProgressDialog(this);
        dialog.setTitle("正在夺命加载中");
        //设置一下进度条的样式
        dialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
        //最后一步一定要记得show 出来
        dialog.show();
        //创建一个子线程
        new Thread(){public void run() {

            //设置进度条最大值
            dialog.setMax(100);

            //设置当前进度
            for (int i = 0; i <=100 ; i++) {

                dialog.setProgress(i);
                //睡眠一会
                SystemClock.sleep(50);

            }
            //关闭对话框
            dialog.dismiss();



        }}.start();

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值