【发布时间】:2018-07-13 06:54:12
【问题描述】:
如果用户选择的时间小于当前时间,我想通知用户,我不想在时间选择器 UI 上显示它,只通知用户。 以下是我当前的代码。
final int mHour, mMinute;
final Calendar c = Calendar.getInstance();
mHour = c.get(Calendar.HOUR_OF_DAY);
mMinute = c.get(Calendar.MINUTE);
hour = c.get(Calendar.HOUR);
//if()
// Launch Time Picker Dialog
TimePickerDialog timePickerDialog = new TimePickerDialog(mainActivity, new TimePickerDialog.OnTimeSetListener() {
@Override
public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
if (hourOfDay >= mHour) {
String strTime = hourOfDay + ":" + minute + ":00";
renewalTime.setText(strTime);
} else {
Toast.makeText(mainActivity, "Time cannot be lesser than current time", Toast.LENGTH_LONG).show();
}
}
}, mHour, mMinute, false);
timePickerDialog.show();
}
所以目前正在发生的事情是,如果当前时间是下午 12 点或之后,它的值是 12,1 等等,而上午 11 点它需要 23 等等......那么在这两种情况下如何比较它们? 谢谢。
【问题讨论】:
-
添加小时和分钟并比较为 - 时间
-
@DarShan 你的意思是小时+分钟?
-
是的,试试这个
-
@Pritish,表示您想在时间选择器中禁用未来日期?
-
我想提出两点建议:最好的方法是将两个日期转换为毫秒时进行比较。您可以将两个日期的秒数设置为零,除非它是具有火箭科学的应用程序。
标签: android android-datepicker android-date