直接上干货
1.首先引入第三方控件
implementation 'com.contrarywind:Android-PickerView:3.2.6'
2. 接下来就是主要代码了
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
private Button btn_date;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initView();
}
private void initView() {
btn_date = findViewById(R.id.btn_date);
btn_date.setOnClickListener(this);
}
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.btn_date:
showDate();
break;
}
}
private void showDate() {
TimePickerView pvTime = new TimePickerView.Builder(this, new TimePickerView.OnTimeSelectListener() {
@Override
public void onTimeSelect(Date date, View v) {
String time = getTime(date);
btn_date.setText(time);
}
})
.setType(new boolean[]{true, true, true, false, false, false})// 默认全部显示
.setCancelText("取消")//取消按钮文字
.setSubmitText("确定")//确认按钮文字
// .setContentSize(18)//滚轮文字大小
// .setTitleSize(20)//标题文字大小
.setTitleText("Title")//标题文字
// .setOutSideCancelable(true)//点击屏幕,点在控件外部范围时,是否取消显示
// .isCyclic(true)//是否循环滚动
// //.setTitleColor(Color.BLACK)//标题文字颜色
// .setSubmitColor(Color.BLUE)//确定按钮文字颜色
// .setCancelColor(Color.BLUE)//取消按钮文字颜色
// //.setTitleBgColor(0xFF666666)//标题背景颜色 Night mode
// .setBgColor(0xFF333333)//滚轮背景颜色 Night mode
.setDate(selectedDate)// 如果不设置的话,默认是系统时间*/
.setRangDate(startDate,endDate)//起始终止年月日设定
//.setLabel("年","月","日","时","分","秒")//默认设置为年月日时分秒
.isCenterLabel(true) //是否只显示中间选中项的label文字,false则每项item全部都带有label。
//.isDialog(true)//是否显示为对话框样式
.build();
pvTime.show();
}
private String getTime(Date date) {//可根据需要自行截取数据显示
//"YYYY-MM-DD HH:MM:SS" "yyyy-MM-dd"
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
return format.format(date);
}
}
xml 布局就是一个按钮,我就不贴了。
欢迎指正啦!!!!