时间选择器

//获取当前时间 传入时间选择器
initTimePicker(Calendar.getInstance());
//或者传入自定义时间
Calendar selectedDate = Calendar.getInstance();
selectedDate.set(year,month, day);自定义时间
initTimePicker(selectedDate );
    /**
     * 弹出时间选择器
     */
    private void initTimePicker(Calendar selectedDate) {
        //控制时间范围(如果不设置范围,则使用默认时间1900-2100年,此段代码可注释)
        //因为系统Calendar的月份是从0-11的,所以如果是调用Calendar的set方法来设置时间,月份的范围也要是从0-11
        Calendar startDate = Calendar.getInstance();
        Calendar c = Calendar.getInstance();
        Calendar endDate = Calendar.getInstance();
        startDate.set(c.get(Calendar.YEAR) - 100, 1, 1);//结束时间
        endDate.set(c.get(Calendar.YEAR), c.get(Calendar.MONTH), c.get(Calendar.DAY_OF_MONTH));//最早时间
        //时间选择器
        pvTime = new TimePickerView.Builder(this, new TimePickerView.OnTimeSelectListener() {
            @Override
            public void onTimeSelect(Date date, View v) {//选中事件回调
                // 这里回调过来的v,就是show()方法里面所添加的 View 参数,如果show的时候没有添加参数,v则为null
                /*btn_Time.setText(getTime(date));*/
                SimpleDateFormat format;
                format = new SimpleDateFormat("yyyy");
                String yyyy = format.format(date).toString();
                format = new SimpleDateFormat("MM");
                String mm = format.format(date).toString();
                format = new SimpleDateFormat("dd");
                String dd = format.format(date).toString();
                format = new SimpleDateFormat("yyyy-MM-dd");
                home_user_birthday_text.setText(format.format(date).toString());
                if (mm.substring(0, 1).equals("0")) {
                    mm = mm.substring(1, 2);
                }
                if (dd.substring(0, 1).equals("0")) {
                    dd = dd.substring(1, 2);
                }
                String sign = MD5.encrypt(dd + mm + yyyy + userdata.get(0) + userdata.get(3) + KeyWord.getAppKey() + KeyWord.GetMemberInfoBirthday());
                mHomeInterface.MemberInfoBirthday(userdata.get(0), userdata.get(3), yyyy, mm, dd, sign);
            }
        })
                .setTextColorCenter(Color.parseColor("#000000"))
                //年月日时分秒 的显示与否,不设置则默认全部显示
                .setType(new boolean[]{true, true, true, false, false, false})
                .setLabel("", "", "", "", "", "")
                .isCenterLabel(false)
                .setDividerColor(Color.DKGRAY)
                .setContentSize(16)
                .setDate(selectedDate)
                .setRangDate(startDate, endDate)
                .setBackgroundId(0x00FFFFFF) //设置外部遮罩颜色
                .setDecorView(null)
                .build();
    }

你可能感兴趣的:(时间选择器)