2

我遇到了 EKEventStore 的奇怪行为。

  1. 启动了应用程序,但不允许访问我的日历。
  2. 显然我不能将我的日历视为“Granted = NO”......
  3. 杀死了应用程序。
  4. 转到设置并启用对日历的访问。
  5. 再次运行应用程序,现在我得到“Granted = YES”但 [self.store calendarsForEntityType:EKEntityTypeEvent] 返回一个空数组。

我确保 self.store 不为零,并且我的日历中确实有日历对象。还能是什么?

4

1 回答 1

0

问题显然是在你的self.store,你是如何构建它的?

根据文档,您必须检索sourcesEKEventStore 对象的属性,这是一个EKSource类型数组,您可以在其上调用calendarsForEntityType

EKSource 类的一个实例表示日历所属的帐户。您不创建此类的实例。您从 EKEventStore 对象中检索 EKSource 对象。使用 sources 属性获取事件存储的所有 EKSource 对象,并使用此类中的方法访问源对象的属性。

于 2014-10-22T21:39:18.407 回答