事件添加
-
导入头文件 import EventKit
-
创建 EKEventStore类型的实例eventStore 以及事件的id eventIdentifier
-
获取请求权限
var eventStore: EKEventStore! eventStore.requestAccess(to: .event) { (success, error) in if error != nil { // 错误中心 print(error ?? "") }else if !success { // 用户被拒绝 print(error ?? "") }else{ // 创建事件 } }
-
在else里面创建事件
let event: EKEvent = EKEvent(eventStore: self.eventStore) event.title = "您今天该还款了,借贷宝 1000元" event.location = "我在上海浦东软件园" // 开始时间 应该传入时间戳 event.startDate = self.dateFrom(time: "2017-05-27 11:37:00", format: "yyyy-MM-dd HH:mm:ss") // 结束时间 时间到了 该事件从日历中消失 event.endDate = self.dateFrom(time: "2017-05-27 11:38:00", format: "yyyy-MM-dd HH:mm:ss") // 提醒时间 按照秒来计算 event.addAlarm(EKAlarm(relativeOffset: -10)) event.addAlarm(EKAlarm(relativeOffset: -30)) event.addAlarm(EKAlarm(relativeOffset: -50)) event.calendar = self.eventStore.defaultCalendarForNewEvents do { // 事件添加成功 try self.eventStore.save(event, span: .thisEvent) print(event.eventIdentifier) self.eventIdentifier = event.eventIdentifier } catch { print("有坏银!") }
事件删除
-
根据之前获取的id "eventIdentifier"
let eventToRemove = eventStore.event(withIdentifier: eventIdentifier!) if (eventToRemove != nil) { do { try eventStore.remove(eventToRemove!, span: .thisEvent) } catch { print("Bad things happened") } }
网友评论