在我的应用程序中,我试图获取在特定时间发生的所有事件。这是我的代码:
let store = EKEventStore()
store.requestAccess(to: EKEntityType.event) { (granted, error) in
if(granted){
let calendars = store.calendars(for: EKEntityType.event)
for calendar in calendars {
let predicate = store.predicateForEvents(withStart: (dates.first?.dateObject)!, end: (dates.last?.dateObject)!, calendars: [calendar])
store.enumerateEvents(matching: predicate){ (event, stop) in
print(event.title)
}
}
}else{
print(error)
}
问题是它只检索生日,不检索用户创建的事件或当天的假期。 这是我得到的输出: 凯特贝尔的生日 凯特贝尔的生日 凯特贝尔的生日 凯特贝尔的生日 约翰·阿普西德诞辰 约翰·阿普西德诞辰 约翰·阿普西德诞辰 约翰·阿普西德诞辰 安娜·哈洛诞辰 安娜·哈洛诞辰 安娜·哈洛诞辰 安娜·哈洛诞辰 大卫·泰勒诞辰 大卫·泰勒诞辰 大卫·泰勒诞辰 大卫·泰勒诞辰
- 那么我怎样才能让它工作,以便我可以获得所有事件,包括用户在其日历上创建的事件。
- 我如何检索每个事件的参与者?
最佳答案
要从所有日历中获取事件,请将 nil 分配给实例方法 predicateForEvents(withStart:end:calendars:) 的日历参数。
let predicate = store.predicateForEvents(withStart: (dates.first?.dateObject)!, end: (dates.last?.dateObject)!, calendars: nil)
https://developer.apple.com/documentation/eventkit/ekeventstore/1507479-predicateforevents
关于ios - Swift - 从日历中检索所有事件并获取事件的参与者,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39804678/