毎週通知をスケジュールするスケジュールに問題があります。私の質問は、それが機能するためには、notification.repeatIntervalと同等でなければならないことです。ありがとう!週間通知のスケジュールに関する問題SWIFT
func applicationDidEnterBackground(application: UIApplication)
{
let state = NSUserDefaults.standardUserDefaults().boolForKey("notifications_enabled");
if (!state) {
UIApplication.sharedApplication().cancelAllLocalNotifications()
}
else {
UIApplication.sharedApplication().cancelAllLocalNotifications()
for var x = 2; x <= 3; x = x+1
{
createAlert(7, minute: 55, day: x, period: "Period 1 Starts in 5 Minutes");
createAlert(8, minute: 45, day: x, period: "Period 2 Starts in 5 Minutes");
createAlert(9, minute: 30, day: x, period: "Break Has Started");
createAlert(10, minute: 10, day: x, period: "Period 3 Starts in 5 Minutes");
createAlert(11, minute: 00, day: x, period: "Period 4 Starts in 5 Minutes");
createAlert(11, minute: 50, day: x, period: "Period 5 Starts in 5 Minutes");
createAlert(12, minute: 40, day: x, period: "Lunch Has Started");
createAlert(13, minute: 51, day: x, period: "Period 6 Starts in 5 Minutes");
createAlert(14, minute: 00, day: x, period: "Period 7 Starts in 5 Minutes");
createAlert(14, minute: 50, day: x, period: "Period 8 Starts in 5 Minutes");
}
}
}
func createAlert(hour:Int, minute:Int, day:Int, period:String)
{
let dateComp:NSDateComponents = NSDateComponents()
dateComp.hour = hour;
dateComp.minute = minute;
dateComp.weekday = day;
dateComp.timeZone = NSTimeZone.systemTimeZone()
let calender:NSCalendar = NSCalendar(calendarIdentifier: NSCalendarIdentifierGregorian)!
let date:NSDate = calender.dateFromComponents(dateComp)!
let notification:UILocalNotification = UILocalNotification()
notification.category = "Daily Quote"
notification.alertBody = period
notification.alertAction = "view"
notification.fireDate = date
notification.soundName = "dingdongloud.mp3"
notification.repeatInterval = NSCalendarUnit.NSWeekOfYearCalendarUnit;
UIApplication.sharedApplication().scheduleLocalNotification(notification);
}
あなたは 'NSCalendarUnitWeekOfYear'カレンダー単位でみてくださいましたか? – Desdenova