2016-07-12 19 views
0

Ich möchte ein UILocalNotification festlegen, das jeden Freitag automatisch einmal pro Woche wiederholt wird. Ich verwende derzeit den unten stehenden Code, um eine Benachrichtigung einmal am Tag zur selben Zeit zu wiederholen, aber ich bin mir nicht sicher, wie ich dies für die Woche erstellen soll.UILocalNotification Wiederholen Einmalig Wöchentlich

Danke

let calendar: NSCalendar! = NSCalendar(calendarIdentifier: NSCalendarIdentifierGregorian) 
       let now: NSDate! = NSDate() 
       let notifDate = calendar.dateBySettingHour(19, minute: 0, second: 0, ofDate: now, options: NSCalendarOptions.MatchFirst)! 

       var notification = UILocalNotification() 
       notification.category = "Reminder" 
       notification.alertTitle = "Alert" 
       notification.alertBody = "Alert body" 
       notification.fireDate = notifDate 
       notification.soundName = UILocalNotificationDefaultSoundName 
       notification.repeatInterval = NSCalendarUnit.Day 
       UIApplication.sharedApplication().scheduleLocalNotification(notification) 
+0

Ändern Sie repeatInterval in NSCalendarUnit. WeekOfYear. Es wird jede Woche zur selben Zeit wiederholt. – brl214

+0

Es scheint keine "NSCalendarUnit.Week" zu geben. Es gibt einen Fehler, der besagt: Typ 'NSCalendarUnit' hat kein Mitglied 'Woche' –

+0

Seine "NSCalendarUnit.WeekOfYear" – brl214

Antwort

1

prüfen Apple Docs hier für UILocalNotification

Dies ist, wie Sie es wöchentlich wiederholen setzen würde.

notification.repeatInterval = NSCalendarUnit.WeekOfYear; 

PS. Dieser Code erstellt eine Benachrichtigung an dem Tag, an dem die Benachrichtigung erstellt wird und nicht nur an Freitagen. Etwas zu beachten.

let now: NSDate! = NSDate() //whatever today's day is and it could be any day between M-Sun 
let notifDate = calendar.dateBySettingHour(19, minute: 0, second: 0, ofDate: now, options: NSCalendarOptions.MatchFirst)! 
+0

Bei der Verwendung der Zeile über die Fehlermeldung ändert sich: Verwendung der nicht aufgelösten Bezeichner 'kCFCalendarUnitWeek' –

+0

Try - NSWeekCalendarUnit –

+0

Es zeigt die gleiche Fehlermeldung leider. –