我正在设置一个闹钟,我从 aTextView
和 AM/PM 通过 a获取小时和分钟Spinner
。这是我初始化Calendar
对象的方式:
Calendar calen = Calendar.getInstance();
calen.set(Calendar.HOUR_OF_DAY, alarmHour); //alarmHour from TextView
calen.set(Calendar.MINUTE, alarmMinute); //alarmMinute from TextView
calen.set(Calendar.SECOND, 0);
calen.set(Calendar.MILLISECOND, 0);
if(amorpm.equals("PM") //amorpm from Spinner
{
calen.set(Calendar.AM_PM, Calendar.PM);
}
else
{
calen.set(Calendar.AM_PM, Calendar.AM);
}
问题是这个对象的Hour值Calendar
有时是正确的,即用户输入的值TextView
(它总是 1 到 12)。但有时,该值等于当前小时。例如,如果当前时间是11:30 pm,而我将闹钟设置为9:30 am,则Hour字段的值为11。一件奇怪的事情是,当我将Calendar
对象的名称更改为其他名称时,例如cal,它可以工作。但是以后就不行了。有什么问题?
谢谢你的帮助!