【发布时间】:2015-07-16 11:41:07
【问题描述】:
让我们考虑以下代码行:
reminder.calendar = appDelegate!.eventStore!.defaultCalendarForNewReminders()
这表示我将提醒放入默认设备的日历中。如何使用代码创建自己的日历?
我想创建自己的提醒的原因是我希望能够管理那里的所有提醒。
【问题讨论】:
让我们考虑以下代码行:
reminder.calendar = appDelegate!.eventStore!.defaultCalendarForNewReminders()
这表示我将提醒放入默认设备的日历中。如何使用代码创建自己的日历?
我想创建自己的提醒的原因是我希望能够管理那里的所有提醒。
【问题讨论】:
为特定类型创建一个新的EKCalendar实例,分配标题和来源并保存到数据库中
let calendar = EKCalendar(for: .reminder, eventStore: eventStore)
calendar.title = "MyNewCalendar"
calendar.source = eventStore.defaultCalendarForNewReminders()?.source
do {
try eventStore.saveCalendar(calendar, commit: true)
} catch { print(error) }
检索提醒日历有点棘手
var myCalendar: EKCalendar?
let calendars = eventStore.calendars(for: .reminder)
if let filteredCalendar = calendars.first(where: {$0.title == "MyNewCalendar"}) {
myCalendar = filteredCalendar
} else {
print("count not find reminder calendar 'MyNewCalendar'")
}
【讨论】: