• Android基础------高级ul:消息对话框


    前言:Android消息对话框提示笔记,刚刚接触Android

    1.经典模式

    //列表对话框
        //经典模式
        public void listdialog_01(View view){
            final String[]  items={"AAA","BBB","CCC","DDD"};
            new AlertDialog.Builder(this)
                    .setTitle("列表消息01")
                    //图片
                    .setIcon(R.mipmap.qq)
                    //设置选择项
                    .setItems(items, new DialogInterface.OnClickListener() {
                        @Override
                        public void onClick(DialogInterface dialogInterface, int i) {
                            // i 是数组索引值
                            Toast.makeText(DraperyActivity.this,"你点的:"+items[i],Toast.LENGTH_SHORT).show();
                        }
                    })
                    .show();
        }

    2.单选按钮模式

    因为选择某个选项的时候,对话框并不会自己关闭,所以要加上个按钮,让对话框关闭

    //列表对话框
        //单选模式
        public void listradiodialog_01(View view){
            final String[]  items={"AAA","BBB","CCC","DDD"};
            new AlertDialog.Builder(this)
                    .setTitle("单选列表消息")
                    //图片
                    .setIcon(R.mipmap.qq)
                    //设置单选按钮,默认选择索引为0的选项,
                    .setSingleChoiceItems(items,0, null)
                    //放置一个按钮,
                    .setPositiveButton("确定", null)
                    .show();
        }

     

     3.复选框模式

    这里就让视图一打开就就创建好这个复选框,当我们点击按钮的时候就直接show出来

     @Override    
    protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_drawerlayout);
    
            createlistcheckboxdialog_01();
    }
     //先行创建好
        public void createlistcheckboxdialog_01(){
            final String[]  items={"AAA","BBB","CCC","DDD"};
            dia = new AlertDialog.Builder(this)
                    .setTitle("复选列表消息")
                    //图片
                    .setIcon(R.mipmap.qq)
                    //设置复选按钮,默认选择第3个,
                    .setMultiChoiceItems(items, new boolean[]{false, false, true, false}, new DialogInterface.OnMultiChoiceClickListener() {
                        /**
                         *
                         * @param dialogInterface
                         * @param i 点击项的索引
                         * @param b 是否被选中
                         */
                        @Override
                        public void onClick(DialogInterface dialogInterface, int i, boolean b) {
                            Toast.makeText(DraperyActivity.this,"你点击的是第"+(i+1)+"项:"+items[i]+b,Toast.LENGTH_SHORT).show();
                        }
                    })
                    //放置一个按钮,用于关闭对话框
                    .setPositiveButton("确定", null)
                    .create();
        }
    
    
        //列表对话框
        //复选框模式
    //点击直接调用
    public void listcheckboxdialog_01(View view){ dia.show(); }

    4.时间选择框

      TimepickerDialog用于选择时间,是系统封装好的

    • 第一个参数接受一个context信息
    • 第二个参数为当选择时间完成后执行的回调接口
    • 第三个参数和第四个参数为初始化的时间
    • 第四个参数选择true代表24小时制,false代表12小时制
    TimePickerDialog dialog= new TimePickerDialog(Context context, OnTimeSetListener listener, int hourOfDay, int minute, boolean is24HourView)

    demo:

    
    
    private EditText workTime;
    //时间对话框
        public void test(View view){
            //构建一个日历对象
            Calendar cal=Calendar.getInstance();//当前日期
            TimePickerDialog dialog=new TimePickerDialog(this, new TimePickerDialog.OnTimeSetListener() {
                @Override
                public void onTimeSet(TimePicker timePicker, int i, int i1) {
                    String time=i+":"+i1;
                    workTime.setText(time);
                }
            },cal.get(Calendar.HOUR)+1,cal.get(Calendar.MINUTE),true);
            dialog.show();
    
        }

     5.日期选择

      DatePickerDialog用于选择日期,也是系统封装好的

    • 第一个参数接受context信息
    • 第二个参数为日期选择完成后的回掉接口
    • 最后三个参数分别为初始化的年月日
     DatePickerDialog dialcog=new DatePickerDialog(Context context, OnDateSetListener callBack, int year, int monthOfYear, int dayOfMonth)
    private EditText intime;
     //日期对话框
        public void test_5(View view){
            //构建一个日历对象
            Calendar cal=Calendar.getInstance();//当前日期  
            //2个月后今天的日期
            //cal.add(Calendar.MONTH,2);
            DatePickerDialog dialog=new DatePickerDialog(this, new DatePickerDialog.OnDateSetListener() {
                @Override
                public void onDateSet(DatePicker datePicker, int i, int i1, int i2) { 
                    intime.setText(i+"-"+(i1+1)+"-"+i2);
                    intime.setSelection(intime.getText().length());
                }
            },cal.get(Calendar.YEAR),cal.get(Calendar.MONTH),cal.get(Calendar.DATE));
            dialog.show();
        }
  • 相关阅读:
    WCF和SOA的简介
    .NET 反射应用
    ASP.NET---如何使用web api创建web服务
    获得N位数字字母随机组合
    git的初步使用
    js贪吃蛇
    python多线程
    2013-12-13
    2012-12-12
    2013-12-5
  • 原文地址:https://www.cnblogs.com/jyiqing/p/7929352.html
Copyright © 2020-2023  润新知