2016-04-01 20 views
0

我正在为本地通知开发具有自定义重复区间的提醒应用程序。我基本上想要的是DueDate通知,然后通知随后触发。如何在应用程序重新打开时重置本地通知

所以Notification1.fireDate =所述DueDate.date

Notification2.fireDate = DueDate.date.dateByAdding(1000)

&持续10个左右的倍。然后,当应用程序再次变为活动状态时,我希望通知行再次循环,但在最后一次通知后启动,如队列。

这都是为了创造自定义重复间隔的错觉。这是我从中得到的想法,因此可以这样做https://stackoverflow.com/a/5765870/5601784

回答

1

如果您没有更改fireDate,那么删除先前设置的通知并重新设置它没有意义。但是,要删除您的应用设置的所有通知,您可以执行此操作。

UIApplication.shared.cancelAllLocalNotifications() 

let app: UIApplication = UIApplication.shared 
for event in app.scheduledLocalNotifications! { 
    let notification = event as UILocalNotification 
    app.cancelLocalNotification(notification) 
} 
print(app.scheduledLocalNotifications!.count))//prints -- 0 

然后你可以设置新的信息UILocalNotification。

+0

我编辑了我的问题,如果你可以看看?谢谢! – Tai

+0

您应该使用核心数据保存上次通知的着火日期和时间。当全部再次打开时,请继续从该日再次设置通知。 – snjmhj

+0

好酷感谢您的想法:) – Tai

相关问题