我已使用EventKit将事件添加到日历中,并且可以从日历中获取所有事件,但是我只需要日历中的应用程序事件即可。所以现在我的问题是,我如何获取与我的应用程序相关的事件。
答案 0 :(得分:0)
func getEvents() -> [EKEvent] {
var allEvents: [EKEvent] = []
// calendars
let calendars = self.eventStore.calendars(for: .event)
// iterate over all selected calendars
for (_, calendar) in calendars.enumerated() where isCalendarSelected(calendar.calendarIdentifier) {
// predicate for today (start to end)
let predicate = self.eventStore.predicateForEvents(withStart: self.initialDates.first!, end: self.initialDates.last!, calendars: [calendar])
let matchingEvents = self.eventStore.events(matching: predicate)
// iterate through events
for event in matchingEvents {
allEvents.append(event)
}
}
return allEvents
}
此代码将为您显示所有事件,然后您必须按标题或可以识别出此事件来自您应用程序的内容进行过滤:)