Я работаю над приложением для iOS, которое создает, обновляет и удаляет EKEvents
. Этого легко добиться, сохранив события в EKEventStore.defaultCalendarForNewEvents
. При каких обстоятельствах я хотел бы создать новый EKCalendar
для своего собственного приложения и какие функции это влечет за собой?
Я спрашиваю, потому что в настоящее время я пытаюсь создать календарь в Swift 3.0, и он продолжает терпеть неудачу, что заставляет меня блуждать, в первую очередь, какова цель нового календаря.
fileprivate var eventStore = EKEventStore()
fileprivate var newCalendar : EKCalendar?
func createNewCalendar() {
self.newCalendar = EKCalendar(for: .event, eventStore: self.eventStore)
self.newCalendar!.title = "newCal"
let sourcesInEventStore = self.eventStore.sources
self.newCalendar!.source = eventStore.defaultCalendarForNewEvents.source
let newCalIndex = sourcesInEventStore.index {$0.title == "newCal"}
if newCalIndex == nil {
do {
try self.eventStore.saveCalendar(self.newCalendar!, commit: true)
print("cal succesful")
} catch {
print("cal failed")
}
}
}
Я знаю, что у меня есть доступ к eventStore
, потому что я могу получать события, а также сохранять их в EKEventStore.defaultCalendarForNewEvents
и обновлять их, используя их существующий календарь.