【发布时间】:2025-12-15 20:30:03
【问题描述】:
我需要在特定时间和特定日期重复 local notification,例如周日和周五上午 10:30 或选定的工作日(周一和周六)。
switch repeatDays {
case .never:
dateComponents = Calendar.current.dateComponents([.hour, .minute], from: date)
flag = false
case .everyDay:
dateComponents = Calendar.current.dateComponents([.hour, .minute], from: date)
case .everyWeek:
dateComponents = Calendar.current.dateComponents([.weekday, .hour, .minute], from: date)
case .everyMonth:
dateComponents = Calendar.current.dateComponents([.day, .hour, .minute], from: date)
case .everyYear:
dateComponents = Calendar.current.dateComponents([.month, .day, .hour, .minute], from: date)
}
let notificationTrigger = UNCalendarNotificationTrigger(dateMatching: dateComponents, repeats: flag)
let request = UNNotificationRequest(identifier: uuid, content: content, trigger: notificationTrigger)
let notiCurrent = UNUserNotificationCenter.current()
notiCurrent.add(request) { (error) in
if let error1 = error {
print(error1.localizedDescription)
}
}
但每周重复通知不会重复Sunday 和Wednesday 或其他特定日期
【问题讨论】:
标签: ios swift usernotifications