【发布时间】:2010-03-18 06:53:00
【问题描述】:
[sessionController.currentSession addObserver:self
forKeyPath:@"sessionState"
options:(NSKeyValueChangeSetting)
context:NULL];
这似乎不起作用。
这段代码所在的类知道 sessionController 并且可以访问 currentSession。 currentSession 的 sessionState 变量是我要观察的。 verboten 是否按照我在这里所做的方式设置要观察的对象?
如果是这样,有什么方法可以做到吗?没有给观察对象一个 currentSession 变量。
【问题讨论】:
-
你自己实现了
observeValueForKeyPath:ofObject:change:context:,对吗?你确保它永远不会被调用? -
还有currentSession的类型是什么?
-
是的,observeValueForKeyPath:ofObject:change:context: 是在 self 中实现的,并且正在为其他东西工作。它根本没有被调用 - 即使在切换之外 - 为此。它应该被要求做其他事情。当前会话是 NSManagedObject 的子类,我有实际的 .h 和 .m 文件。
-
而
sessionState在当前会话子类中实现了@property和@dynamic? -
别抱歉!感谢所有的问题。我真的很感激。
标签: iphone cocoa-touch key-value-observing