Ich arbeite an einer iOS-App, die erstellt, aktualisiert und löscht EKEvents
. Dies kann leicht erreicht werden, indem die Ereignisse unter EKEventStore.defaultCalendarForNewEvents
gespeichert werden. Unter welchen Umständen möchte ich eine neue EKCalendar
für meine eigene App erstellen und welche Funktionalität beinhaltet das?Geeignete Situationen zum Erstellen eines neuen EKCalenders iOS
Ich frage, weil ich gerade versuche, einen Kalender in Swift 3.0 zu erstellen, und es weiterhin versagt, was mich umherwandern lässt, was der Zweck des neuen Kalenders überhaupt ist.
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")
}
}
}
Ich weiß, ich habe Zugriff auf die eventStore
, weil ich in den Ereignissen ziehen können sowie speichern Sie sie auf dem EKEventStore.defaultCalendarForNewEvents
und aktualisieren sie ihre bestehenden Kalender verwenden.
Haben Sie diesen Code getestet? Ich habe das für ein paar Stunden probiert und jedes Mal, wenn es versucht zu speichern, scheitert es. Ich habe sogar Ihren Code wortwörtlich kopiert und eingefügt, ohne Erfolg. –
Was ist der Wert von "eventStore" in Ihrem Programm? Es muss eine 'EKEventStore'-Instanz sein, nicht das Klassenobjekt. Bitte zeigen Sie uns den Code und die Fehlermeldung in Ihrer Frage. – ozgur
Frage aktualisiert –