我想制作一个类似iOS Reminders应用的应用。我的问题是自定义重复部分。我们可以在第三个星期一和#34;(下面的屏幕截图)中设置自定义重复,例如"每两个月,但我不知道如何使用用户通知实现这种重复。
我该怎么做?
答案 0 :(得分:1)
虽然问题可能在国外被完全回答,但我会发布一个答案,应该通过使用用户通知抓住你如何实现它的表面。
如果您的目标是让通知的显示基于特定的日期/间隔 - 如您提到“第三个星期一的每两个月” - 那么您应该使用 UNCalendarNotificationTrigger
:
发送本地通知的日期和时间。
示例:
import UserNotifications
// first, you declare the content of the notification:
let content = UNMutableNotificationContent()
content.title = "Notification Title"
content.subtitle = "Notification Subtitle"
content.body = "Notification Body"
// now, you should declare the UNCalendarNotificationTrigger instance,
// but before that, you'd need to describe what's the date matching for firing it:
// for instance, this means it should get fired every Monday, at 10:30:
var date = DateComponents()
date.weekday = 2
date.hour = 10
date.minute = 30
// declaring the trigger
let calendarTrigger = UNCalendarNotificationTrigger(dateMatching: date, repeats: true)
// creating a request and add it to the notification center
let request = UNNotificationRequest(identifier: "notification-identifier", content: content, trigger: calendarTrigger)
UNUserNotificationCenter.current().add(request)