OGeek|极客世界-中国程序员成长平台

标题: ios - Swift - 从日历中检索所有事件并获取事件的参与 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-11 17:41
标题: ios - Swift - 从日历中检索所有事件并获取事件的参与

在我的应用程序中,我试图获取在特定时间发生的所有事件。这是我的代码:

    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)
        }

这样做的问题是它只检索生日,而不检索用户创建的事件或当天的假期。 这是我得到的输出: 凯特贝尔诞辰 凯特贝尔诞辰 凯特贝尔诞辰 凯特贝尔诞辰 约翰·苹果籽诞辰 约翰·苹果籽诞辰 约翰·苹果籽诞辰 约翰·苹果籽诞辰 安娜哈罗诞辰 安娜哈罗诞辰 安娜哈罗诞辰 安娜哈罗诞辰 大卫泰勒诞辰 大卫泰勒诞辰 大卫泰勒诞辰 大卫·泰勒的生日



Best Answer-推荐答案


要从所有日历中获取事件,请将 nil 分配给实例方法 predicateForEvents(withStart:end:calendars 的 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/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (https://ogeek.cn/) Powered by Discuz! X3.4