1.导入依赖
//时间选择器
implementation 'com.contrarywind:Android-PickerView:4.1.9'
2初始化
private TimePickerView pvTime; //时间选择器对象
private TextView textBirthdayEd;
//初始化时间选择器
private void initTimePicker() {
Calendar selectedDate = Calendar.getInstance();
Calendar startDate = Calendar.getInstance();
startDate.set(1900, 1, 1);//起始时间
Calendar endDate = Calendar.getInstance();
endDate.set(2099, 12, 31);//结束时间
pvTime= new TimePickerBuilder(this, new OnTimeSelectListener() {
@Override
public void onTimeSelect(Date date, View v) {
//选中事件回调
//mTvMyBirthday 这个组件就是个TextView用来显示日期 如2020-09-08
textBirthdayEd.setText(getTimes(date));
}
})
//年月日时分秒 的显示与否,不设置则默认全部显示
.setType(new boolean[]{true, true, true, false, false, false})
.setLabel("年", "月", "日", "时", "", "")
.isCenterLabel(true)
.setDividerColor(Color.DKGRAY)
.setTitleSize(21)
.setDate(selectedDate)
.setRangDate(startDate, endDate)
.setDecorView(null)
.build();
}
//格式化时间
private String getTimes(Date date) {
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
return format.format(date);
}
textBirthdayEd = (TextView) findViewById(R.id.text_birthday_ed);
//选择生日
textBirthdayEd.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
initTimePicker(); //初始化时间选择器
pvTime.show();//显示时间选择器
}
});