我正在一堆表视图控制器上动态注册一个观察者,因此如果以前的观察者是在同一对象上注册的,我需要删除它们。为此,我需要检查对象上是否存在观察者。
这可能吗?我知道使用 NSNotification 您可以使用 NSNotification 中心单例,但这对 KVO 来说是一样的吗?
,如何删除在同一对象上注册的观察者。
但我认为下面的方法将帮助您更轻松地找到解决方案。
observationInfo
返回一个指针,该指针标识有关向接收方注册的所有观察器的信息。
- (void *)observationInfo
此方法的默认实现从由接收方指针键控的全局字典中检索信息。
不,我知道没有简单的方法。KVO和NSNotization在这一点上有所不同。如果您需要 NSNotification 而不是 KVO 来实现您的解决方案?