错误“使用未解析的标识符'EKEntityTypeEvent'”尝试访问日历

时间:2015-07-18 19:38:52

标签: ios swift eventkit

我正在尝试使用Swift 2通过EventKit访问用户的日历。在网上挖掘时,我发现few examples显示了与answer类似的实现另一个SO question

我一直打的错误是

  

使用未解析的标识符'EKEntityTypeEvent'

在我的viewDidLoad() -

let eventStore = EKEventStore()

switch EKEventStore.authorizationStatusForEntityType(EKEntityTypeEvent) {        
case .Authorized:
    insertEvent(eventStore)
case .Denied:
    print("Access denied")
case .NotDetermined:
    eventStore.requestAccessToEntityType(EKEntityTypeEvent, completion:
        {[weak self] (granted: Bool, error: NSError!) -> Void in
            if granted {
                self!.insertEvent(eventStore)
            } else {
                print("Access denied")
            }
        })
default:
    print("Case Default")
}

有关此错误的任何想法?

我正在运行El Capitan / XCode 7 Beta 3。

1 个答案:

答案 0 :(得分:7)

好的,这里主要有两个错误 - 第一个已在评论中讨论过。

首先:使用.EventEKEntityType.Event代替EKEntityTypeEvent

第二:更改完成处理程序的声明以接受NSError?而不是NSError!,因为the actual completion handler是以这种方式定义的。