2017-03-15 4 views
0

Der Versuch, dem Kalender meines Benutzers eine gerade Nachricht hinzuzufügen, aber nicht sicher, wie die Standardbenachrichtigungen festgelegt werden. Was ich habe ist das so weit:Wie wird eine Standardwarnung im Kalender festgelegt?

func createEvent(item: Item) { 
     let eventStore = EKEventStore() 

     eventStore.requestAccessToEntityType(EKEntityType.Event, completion: { (granted, error) in 
      if granted && error == nil { 
       let event = EKEvent(eventStore: eventStore) 
       event.title = item.name 
       event.startDate = item.StartDate 
       event.endDate = item.endDate 
       event.notes = item.description 
       event.calendar = eventStore.defaultCalendarForNewEvents 

       let alarm1hour = EKAlarm(relativeOffset: 3600) //1 hour 
       let alarm1day = EKAlarm(relativeOffset: 86400) //1 day 
       event.addAlarm(alarm1day) 
       event.addAlarm(alarm1hour) 

       // prompt user to add event (to whatever calendar they want) 
       let controller = EKEventEditViewController() 
       controller.event = event 
       controller.eventStore = eventStore 
       controller.editViewDelegate = self 

       self.presentViewController(controller, animated: true, completion: nil) 

      } else { 
       self.dismissViewControllerAnimated(true, completion: {}) 
      } 
     }) 
    } 

Ich nahm an, dass alarm = alert, aber das scheint nichts zu tun. Wie kann ich einen Tag vor dem Event und einen weiteren für 1 Stunde vor dem Event einen Alarm einstellen?

Antwort

2

Vom documentation für EKAlarm(relativeOffset:):

Negative Offsetwerte Feuer vor dem Beginn der Veranstaltung, während positive Werte Feuer nach dem Start.

Ich würde versuchen, die folgenden:

let alarm1hour = EKAlarm(relativeOffset: -3600) //1 hour 
let alarm1day = EKAlarm(relativeOffset: -86400) //1 day 

Hinweis: Sie können eine absolute Zeit für die verwendet werden soll „einen Tag vor dem“ Alarm durch die Sommerzeit ändert.

Verwandte Themen