第一天Dialog对话框

第一单元 Dialog对话框

  • 普通对话框
  • 单点击对话框
  • 多选对话框
  • 自定义对话框
  • 水平进度条对话框
  • 日历对话框
  • 日期对话框

普通对话框

  btn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                //创建构造z者
                AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
                builder.setIcon(R.drawable.ic_launcher_background);
                builder.setTitle("你好");
                builder.setMessage("w shni ye");
                //确定和取消
                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("cancel", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        Toast.makeText(MainActivity.this,"你点击了cancel",Toast.LENGTH_SHORT).show();
                    }
                });
                //创建对话框
                AlertDialog alertDialog = builder.create();
                //显示
                alertDialog.show();

            }
        });

单点击对话框

 btn_siggle.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
                builder.setIcon(R.drawable.ic_launcher_background);//设置图标
                builder.setTitle("杨成果的成分是");//设置标题


                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("cancel", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        Toast.makeText(MainActivity.this,"你点击了cancel",Toast.LENGTH_SHORT).show();
                    }
                });

               final  String[] str={"卡夫卡", "牛顿", "新年套"};
                builder.setSingleChoiceItems(str, 2, new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        Toast.makeText(MainActivity.this, "你选中烦恼的"+str[which], Toast.LENGTH_SHORT).show();
                    }
                });


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

            }
        });

多选对话框

  //多选
        btn_more.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
                //数据源
               final String[] str={"ppt","c++","java"};
                //判断
              final   boolean[] bol={true,false,true};
                builder.setMultiChoiceItems(str, bol, new DialogInterface.OnMultiChoiceClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which, boolean isChecked) {
                            bol[which]=isChecked;
                    }
                });
                AlertDialog alertDialog = builder.create();
                alertDialog.show();
            }
        });

自定义对话框

  //自定义
        btn_lay.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
                View view = LayoutInflater.from(MainActivity.this).inflate(R.layout.item_1, null);
                builder.setView(view);

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

水平进度条对话框

 //进度条
        btn_jin.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                final ProgressDialog dialog = new ProgressDialog(MainActivity.this);
                dialog.setMax(100);
                dialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
                dialog.setMessage("正在下载");
                //显示
                dialog.show();
                final Timer timer = new Timer();
                timer.schedule(new TimerTask() {
                    int progress=0;
                    @Override
                    public void run() {
                        if (progress==100){
                            dialog.dismiss();
                            timer.cancel();

                        }
                        dialog.setProgress(progress+=10);
                    }
                },0,1000);
            }
        });

日历对话框

  //日历对象
        btn_date.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                Calendar calendar = Calendar.getInstance();//日历对象
                new DatePickerDialog(MainActivity.this, new DatePickerDialog.OnDateSetListener() {
                    @Override
                    public void onDateSet(DatePicker view, int year, int month, int dayOfMonth) {
                        Toast.makeText(MainActivity.this, year+"-"+(month+1)+"-"+dayOfMonth, Toast.LENGTH_SHORT).show();
                    }
                },calendar.get(Calendar.YEAR),calendar.get(Calendar.MONTH),calendar.get(Calendar.DAY_OF_MONTH)).show();
            }
        });

日期对话框

   //日期
        btn_time.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Calendar calendar=Calendar.getInstance();//日历对象

                new TimePickerDialog(MainActivity.this, new TimePickerDialog.OnTimeSetListener() {
                    @Override
                    public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
                        Toast.makeText(MainActivity.this, hourOfDay+":"+minute, Toast.LENGTH_SHORT).show();
                    }
                },calendar.get(Calendar.HOUR),calendar.get(Calendar.MINUTE),true).show();

            }
        });

你可能感兴趣的:(第一天Dialog对话框)