对话框

普通对话框

对话框_第1张图片

 public void onclick(View view) {

        AlertDialog.Builder builder = new AlertDialog.Builder(this);

        builder.setIcon(R.drawable.ic_launcher_background);//设置图标
        builder.setTitle("hello,body");//设置标题
        builder.setMessage("我是小丸子");//设置内容

        //设置确定按钮
        builder.setPositiveButton("ok", new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialog, int which) {

                Toast.makeText(MainActivity.this, "你点击了OK", Toast.LENGTH_SHORT).show();

            }
        });

        //设置取消按钮
        builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialog, int which) {

                Toast.makeText(MainActivity.this, "你点击了取消按钮", Toast.LENGTH_SHORT).show();

            }
        });

        AlertDialog alertDialog = builder.create();

        alertDialog.show();


    }

单选对话框

对话框_第2张图片

public void onclick2(View view) {

        AlertDialog.Builder builder = new AlertDialog.Builder(this);

        builder.setIcon(R.mipmap.ic_launcher);
        builder.setTitle("我是标题");

        builder.setPositiveButton("ok", new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialog, int which) {

                Toast.makeText(Main2Activity.this, "你点击了ok", Toast.LENGTH_SHORT).show();
                
            }
        });

        builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialog, int which) {

                Toast.makeText(Main2Activity.this, "你点击了取消", Toast.LENGTH_SHORT).show();

            }
        });

        final String[] items = {"男人","女人","小孩"};
        //设置单选列表
        //参数一 列表  参数二 默认选中的下标 参数三  事件监听
        builder.setSingleChoiceItems(items, 2, new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialog, int which) {

                Toast.makeText(Main2Activity.this, "**"+items[which], Toast.LENGTH_SHORT).show();
                
            }
        });

        AlertDialog alertDialog = builder.create();
        alertDialog.show();


    }

多选对话框

对话框_第3张图片

public void onclick3(View view) {

        String[] items = {"小花","小草","花花","草草"};
        final boolean[] booleans = {true,true,true,true};

        AlertDialog.Builder builder = new AlertDialog.Builder(this);

        builder.setIcon(R.mipmap.ic_launcher);
        builder.setTitle("我是标题");
        builder.setPositiveButton("ok", new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialog, int which) {

                Toast.makeText(Main3Activity.this, "点击ok", Toast.LENGTH_SHORT).show();
            }
        });

        builder.setNegativeButton("cancle", new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialog, int which) {

                Toast.makeText(Main3Activity.this, "点击cancle", Toast.LENGTH_SHORT).show();

            }
        });

        builder.setMultiChoiceItems(items, booleans, new DialogInterface.OnMultiChoiceClickListener() {
            @Override
            public void onClick(DialogInterface dialog, int which, boolean isChecked) {
                booleans[which] = isChecked;
                
            }
        });

        AlertDialog alertDialog = builder.create();
        alertDialog.show();


    }

自定义对话框

对话框_第4张图片
1.自定义布局




   

    


2.Java代码


        View view = LayoutInflater.from(this).inflate(R.layout.activity_main4, null);

        ImageView imageView = view.findViewById(R.id.img);
        imageView.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                Toast.makeText(Main4Activity.this, "点击图片成功", Toast.LENGTH_SHORT).show();

            }
        });

        AlertDialog.Builder builder = new AlertDialog.Builder(this);
        builder.setView(view);
        AlertDialog alertDialog = builder.create();
        alertDialog.show();

水平进度条对话框

对话框_第5张图片

public void onclick5(View view) {

        final ProgressDialog progressDialog = new ProgressDialog(this);

        progressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
        progressDialog.setMax(100);
        progressDialog.setProgress(30);
        progressDialog.setMessage("正在下载");

        progressDialog.show();

        final Timer timer = new Timer();
        timer.schedule(new TimerTask() {
            int progress = 0;
            @Override
            public void run() {

                if (progress==100) {
                    progressDialog.dismiss();//消失
                    timer.cancel();
                }
                progressDialog.setProgress(progress+=10);

            }
        },0,1000);//0秒后执行,每个一秒执行一次

    }

圆形进度条对话框

对话框_第6张图片

public void onclick6(View view) {

        final ProgressDialog progressDialog = new ProgressDialog(this);
        progressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
        progressDialog.setIcon(R.mipmap.ic_launcher);
        progressDialog.setMessage("正在下载");
        progressDialog.setMax(100);

        progressDialog.show();

        final Timer timer = new Timer();
        timer.schedule(new TimerTask() {
            int progress = 0;
            @Override
            public void run() {

                if (progress == 100){
                    progressDialog.dismiss();
                    timer.cancel();
                }

                progressDialog.setProgress(progress+=10);

            }
        },0,1000);

    }

日期选择对话框

对话框_第7张图片

 public void onclick7(View view) {

        Calendar calendar = Calendar.getInstance();
        new DatePickerDialog(this, new DatePickerDialog.OnDateSetListener() {
            @Override
            public void onDateSet(DatePicker view, int year, int month, int dayOfMonth) {

                Toast.makeText(Main7Activity.this, year+"-"+(month+1)+"-"+dayOfMonth, Toast.LENGTH_SHORT).show();
                
            }
        },calendar.get(Calendar.YEAR),calendar.get(Calendar.MONTH),calendar.get(Calendar.DAY_OF_MONTH)).show();


    }

时间选择对话框

对话框_第8张图片

public void onclick8(View view) {

        Calendar calendar = Calendar.getInstance();
        new TimePickerDialog(this, new TimePickerDialog.OnTimeSetListener() {
            @Override
            public void onTimeSet(TimePicker view, int hourOfDay, int minute) {

                Toast.makeText(Main8Activity.this, hourOfDay+":"+minute, Toast.LENGTH_SHORT).show();

            }
        },calendar.get(Calendar.HOUR),calendar.get(Calendar.MINUTE),true).show();

    }

你可能感兴趣的:(对话框)