#swift #ekevent #ekeventkit #ekeventviewcontroller
#swift #событие быстрого обновления #ekeventkit #ekeventviewcontroller
Вопрос:
Привет, я пытаюсь обновить событие. Я успешно смог добавлять и удалять событие, используя ту же логику.
Для добавления события я использовал -> try store.save(event, span: .thisEvent, commit: true)
Как мне обновить событие???
Для удаления события я использовал -> try store.remove(calendar, span: .thisEvent, commit: true)
У меня есть правильный идентификатор события и значение события при вызове метода updatedEvent(), и я могу распечатать событие в этой функции.
При вызове этой функции не удается обновить новое событие и выводится сообщение «Событие не может быть обновлено».
Я не смог найти store.update(event, span: .thisEvent, commit: true)
или что-то в этом роде.
Любая помощь очень уместна, спасибо!
public func updateEvent(title: String, startDate: Date, isAllDay: Bool , timeZone: String,address: String, note: String, store: EKEventStore, event: EKEvent){
let event = store.event(withIdentifier: event.eventIdentifier)
let endDate = startDate.addingTimeInterval(2 * 60 * 60)
event?.title = title
event?.isAllDay = isAllDay
event?.location = address
event?.startDate = startDate
event?.endDate = endDate
event?.notes = note
event?.calendar = store.defaultCalendarForNewEvents
do {
try store.save(event!, span: .thisEvent, commit: true)
} catch {
print("Event Could not be updated")
}
}
Комментарии:
1.
save
обновляет измененное событие.2. на самом деле утомительно делать то же самое, но я не могу правильно получить eventIdentifier и сохранить его в Realm. Вам удалось это решить. Я также очень заинтересован в решении этой проблемы.