当重复间隔设置为1秒(NSSecCalendarUnit)时,为什么在1分钟后重复本地通知?

时间:2012-11-30 11:27:37

标签: ios uilocalnotification

我正在尝试安排一次本地通知,一旦通知被触发,该通知将在每1秒后重复一次。应用程序启动后10秒触发通知。

UILocalNotification *notif = [[cls alloc] init];

    notif.fireDate = [[NSDate alloc]initWithTimeInterval:10 sinceDate:[NSDate date]];
    notif.timeZone = [NSTimeZone defaultTimeZone];
    notif.alertBody = @"Did you forget something?";
    notif.alertAction = @"Show me";
    //notif.soundName = UILocalNotificationDefaultSoundName;
    notif.soundName = @"applause-light-01.wav";
    notif.applicationIconBadgeNumber = 1;
    notif.repeatInterval = NSSecondCalendarUnit;
    [[UIApplication sharedApplication] scheduleLocalNotification:notif];

即使我已经使用过notif.repeatInterval = NSSecondCalendarUnit,也会在60秒后重复通知。我做错了什么?

1 个答案:

答案 0 :(得分:1)

notif.fireDate = [[NSDate alloc]initWithTimeInterval:10 sinceDate:[NSDate date]];

这行代码会在创建新日期后触发本地通知。如果您想立即收到通知,那么您应该创建一个这样的简单日期,

notif.fireDate = [NSDate date];

希望这有帮助。