在 Swift 中创建日历

Creating calendar in Swift

让我们考虑以下代码行:

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: {[=11=].title == "MyNewCalendar"}) {
    myCalendar = filteredCalendar
} else {
    print("count not find reminder calendar 'MyNewCalendar'")
}