【发布时间】:2017-11-01 10:07:18
【问题描述】:
我能够使用 iOS eventkit 成功创建一个事件,但该事件在没有警报的情况下保存。是否可以从代码向日历事件添加警报(如 15 分钟前、1 小时前等)? 这是我当前创建事件的代码
let eventStore : EKEventStore = EKEventStore()
// 'EKEntityTypeReminder' or 'EKEntityTypeEvent'
eventStore.requestAccess(to: .event) { (granted, error) in
let event:EKEvent = EKEvent(eventStore: eventStore)
if let title = self.calendarTitle {
event.title = title
} else {
event.title = "Session"
}
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ss'Z'"
let dateStart = dateFormatter.date(from: self.calendarStart)
let dateEnd = dateFormatter.date(from: self.calendarEnd)
event.startDate = dateStart!
event.endDate = dateEnd!
event.notes = self.calendarNote
event.calendar = eventStore.defaultCalendarForNewEvents
do {
try eventStore.save(event, span: .thisEvent)
} catch let error as NSError {
print("failed to save event with error : \(error)")
}
self.alertify(message: "Event saved in Calendar", in: self, success: true)
}
else {
self.alertify(message: "Unable to save", in: self, success: false)
}
}
【问题讨论】:
-
您需要创建
EKAlarm的实例并将其添加到您的活动中