问题描述
我正在尝试为时间选择器设置最小和最大时间。我给出的值如下
1 -> 最小 - 10:00 和最大 - 12:00
2 -> 最小 - 15:00 和最大 - 18:00
3 -> 最少 - 19:00 最多 20:00
4 -> 最少 - 23:00 最多 24:00
我正在使用以下代码:
@Override
public void onTimeChanged(TimePicker view,int hourOfDay,int minute) {
boolean flag = true;
if (hourOfDay <= maximumHour && hourOfDay >= minimumHour) {
if (hourOfDay == maximumHour && hourOfDay == minimumHour) {
if (minute > maximumMin)
flag = false;
else if (minute < minimumMin)
flag = false;
else if (minute == maximumMin && minute == minimumMin) {
flag = false;
} else if (minute == maximumMin) {
flag = false;
} else if (minute == minimumMin) {
flag = false;
}
} else if (hourOfDay == maximumHour) {
if (minute > maximumMin) {
flag = false;
}
} else if (hourOfDay == minimumHour) {
if (minute < minimumMin)
flag = false;
}
if (flag) {
curHour = hourOfDay;
curMin = minute;
} else {
updateTime(curHour,curMin);
}
}
}
此代码适用于第 2 和第 3 种情况。但是对于第 1 和第 4 种情况,我无法将时间设置为上午 12 点或下午 12 点。我最多可以设置为上午 11:59 和晚上 11:59。
我也验证了 Android TimePickerDialog set max time。但我遇到了同样的问题。请帮我解决这个问题。
解决方法
试试 datePicker.setMaxDate(); datePicker.setMinDate();
也请检查此链接:enter link description here