我创建了一个应用程序,它通过EventKit
获取所有日历事件,但我编写的代码仅适用于特定标题:
func readEvents() {
let eventStore = EKEventStore()
let calendars = eventStore.calendars(for: .event)
for calendar in calendars {
if calendar.title == "Work"{
//let predicate = eventStore.predicateForReminders(in: [calendar])
let oneMonthAgo = NSDate(timeIntervalSinceNow: -30*24*3600)
let oneMonthAfter = NSDate(timeIntervalSinceNow: +30*24*3600)
let predicate = eventStore.predicateForEvents(withStart: oneMonthAgo as Date, end: oneMonthAfter as Date, calendars: [calendar])
var events = eventStore.events(matching: predicate)
for event in events {
titles.append(event.title)
print([titles])
}
}
}
}
这仅适用于“工作”日历中的事件,如何包括所有事件而不管日历?
答案 0 :(得分:1)
您拥有calendars
数组中的所有日历。在迭代中,您遍历所有但有条件只有在日历被称为工作时才能获得其他信息。删除if-statement
,您将获得所有日历的信息。
答案 1 :(得分:0)
只需删除此部分吗?
if calendar.title == "Work"
答案 2 :(得分:0)
这些选项是否允许您选择要将事件添加到哪个日历,或者这会添加到所有日历?