如何将Java.util.calendar设置为将来的特定时间段

New*_*Dev 7 android calendar

我正在使用Java的日历在特定的日期和时间设置闹钟.我知道如何在用户选择特定日期和时间时使其工作.例如,如果用户想要在2013年7月17日上午10:45设置闹钟,我使用以下代码:

//Get the calendar instance.
Calendar calendar = Calendar.getInstance();       

//Set the time for the notification to occur.
calendar.set(Calendar.YEAR, 2013);
calendar.set(Calendar.MONTH, 6);
calendar.set(Calendar.DAY_OF_MONTH, 17);                 
calendar.set(Calendar.HOUR_OF_DAY, 10);
calendar.set(Calendar.MINUTE, 45);
calendar.set(Calendar.SECOND, 0);
Run Code Online (Sandbox Code Playgroud)

当我想在特定日期和时间设置闹钟时,上述所有代码都能正常工作.我的问题是,如何设置一个日历实例,用户用户希望在当前日期和时间20分钟后发出警报?因此,如果当前时间是下午6:50,我需要在下午7:10发出警报.如何以编程方式设置?

我尝试通过Java.util.calendar的内置方法获取当前日期和时间,并尝试向Calendar.MINUTE变量添加20分钟.但是,如果当前时间距离午夜不到20分钟(日期会发生变化),或者距离另一个小时20分钟(小时会发生变化),我认为这不会起作用.我怎样才能解决这个问题?感谢你的帮助!

dig*_*igo 5

你想看看calendar.add,如果你出现溢出,它会增加下一个字段.

http://developer.android.com/reference/java/util/Calendar.html