//获取当前时间 传入时间选择器
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();
}