【问题标题】:EKEventStore object issue - EKErrorDomain "No calendar has been set"EKEventStore 对象问题 - EKErrorDomain “未设置日历”
【发布时间】:2015-11-17 12:55:27
【问题描述】:

我正在创建一个虚拟数据并从 for 循环中调用此方法 200 次:

    func createEvent(eventStore: EKEventStore, title: String, startDate: NSDate, endDate: NSDate) {
    let event = EKEvent(eventStore: eventStore)

    event.title = title
    event.startDate = startDate
    event.endDate = endDate
    event.calendar = eventStore.defaultCalendarForNewEvents
    do {
        try eventStore.saveEvent(event, span: .ThisEvent)
        print("Adding event \(event.title)")
        //savedEventId = event.eventIdentifier
    } catch {
        print("Bad things happened 1")
    }
}

一些事件是正确的,但从大约 90 到 100 开始 - 我在捕获“发生了坏事”时遇到了错误。当我在那里设置断点时,我看到 EKErrorDomain "No calendar has been set",如果某些事件是正确的,怎么会这样,为什么会不一致?

Xcode 断点时刻:

我认为这与多线程有关,这就是我的来源:

Xcode 日志:

【问题讨论】:

    标签: ios xcode swift2 eventkit ekeventkit


    【解决方案1】:

    好的,日历的问题实际上是在 for 循环中创建的 EventStore 对象,每次迭代期间,这就是为什么访问它会产生奇怪的行为。在循环之外创建并传递给降序方法时,它可以工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-03-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多