2

我想观察日历应用程序的变化,所以我注册了EKEventStoreChangedNotification通知。但是我是否需要有一个EKEventStore“活着”的对象才能收到此通知?我在想我正在初始化EKEventStore视图控制器上的对象以检索一些事件。然后我将弹出导航堆栈的这个视图控制器,视图控制器将被释放,因此EKEventStore对象将被释放。

4

2 回答 2

2

不,您不需要保持 EKEventStore 对象处于活动状态,因为您已经使用名为 eventStore 的 EKEventStore 对象注册EKEventStoreChangedNotification

[[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(storeChanged:)
                              name:EKEventStoreChangedNotification  object:eventStore];

请参阅内容以获得更多疑虑

于 2012-09-07T19:39:11.240 回答
0

对于 swift 3.x,使用如下

NotificationCenter.default.addObserver(self, selector: #selector(ViewController.storeChanged(_:)), name: NSNotification.Name.EKEventStoreChanged, object: eventStore)
...
...
...
//Method
func storeChanged(_ nsNotification: NSNotification) {
//do your stuff
}
于 2016-12-01T08:56:42.127 回答