Android:减去警报的分钟数

时间:2013-09-05 20:12:33

标签: android google-calendar-api alarm

我正在发出警报,请按照以下方式获取当前时间:

public String getAlarmTimeStringFive2db() {

        String timef2db = "";
        if (alarmTime.get(Calendar.HOUR_OF_DAY) <= 9)
            timef2db += "0";
        timef2db += String.valueOf(alarmTime.get(Calendar.HOUR_OF_DAY));
        timef2db += ":";

        if (alarmTime.get(Calendar.MINUTE) <= 9)
            timef2db += "0";
        timef2db += String.valueOf(alarmTime.get(Calendar.MINUTE));

        return timef2db;

    }

...

public static long create(Alarm alarm) {
        ContentValues cv = new ContentValues();
        cv.put(COLUMN_ALARM_ACTIVE, alarm.getAlarmActive());
        cv.put(COLUMN_ALARM_TIME, alarm.getAlarmTimeStringFive2db());

...

public void setAlarmTime(String alarmTime) {

    String[] timePieces = alarmTime.split(":");

    Calendar newAlarmTime = Calendar.getInstance();
    newAlarmTime.set(Calendar.HOUR_OF_DAY,
            Integer.parseInt(timePieces[0]));
    newAlarmTime.set(Calendar.MINUTE, Integer.parseInt(timePieces[1]));
    newAlarmTime.set(Calendar.SECOND, 0);
    setAlarmTime(newAlarmTime);     
}

...

这很好用,例如返回5:35 ......好吧。

我的问题是我想要总是按时减去5分钟。如果时间是5:35,我希望闹钟时间从5:30开始。

我的问题是我不知道如何减去那5分钟。 我试过了

Calendar.MINUTE,Integer.parseInt(timePieces [1],5)

Calendar.MINUTE,-5)

......但没有任何作用

我读了这个链接 Set Alarm To Alert 5 Minutes Before a certian Time ..但我无法将其应用于我的代码

有人能告诉我减去5分钟的闹钟吗?

提前致谢

此致

1 个答案:

答案 0 :(得分:3)

我不确定您是否以正确的方式使用Calendar实例,但是这里有一个示例显示使用时将时间更改为当前日历的

Calendar cal = Calendar.getInstance();
    System.out.println("Before :" +  cal.get(Calendar.MINUTE));
    cal.add(Calendar.MINUTE, -5);
    System.out.println("After :" + cal.get(Calendar.MINUTE));

,结果将是这样的:

Before :37 
After :32