【发布时间】:2015-10-11 12:55:18
【问题描述】:
我的应用程序中有一个非常奇怪的错误。尝试使用 saveEvent 保存事件会导致应用以 3 种方式之一继续:
- 一切都得到正确保存,没有问题
- 应用程序崩溃并出现
unrecognized selector sent to instance错误,其中有问题的选择器是constraints:,并且它发送到的对象总是不同且相当不可预测(它们几乎总是私有 SDK 类) - 应用程序崩溃并出现
EXC_BAD_ACCESS错误
在尝试对此进行调试时,我已将应用程序剥离为仅列出事件的视图控制器,并带有一个添加新事件的按钮。我第一次展示视图控制器来添加一个事件,一切都很顺利,但是我第二次这样做时,它会抛出一个错误。
这是我使用的代码:
self.event = EKEvent(eventStore: self.eventStore!)
self.event!.calendar = self.calendar!
self.event!.startDate = self.defaultStartDate()
self.event!.endDate = self.event!.startDate.dateByAddingTimeInterval(3600)
var error: NSError?
self.eventStore!.saveEvent(self.event!, span:EKSpanThisEvent, error: &error)
if let e = error {
println("Saving error: \(error)")
}
如果 calendar、startDate 或 endDate 的值无效,我会收到一个没有崩溃的描述性错误,但在这里它会在 self.eventStore!.saveEvent() 处崩溃。任何帮助表示赞赏!
编辑
原来这是由于对self.eventStore.reset() 的一个无关调用。
【问题讨论】:
标签: ios eventkit ekeventstore