KVO - How to get a list of an objects registered o

2019-04-24 09:03发布

I am registering an observer on a bunch of tableview controllers dynamically so I need to remove previous observers if they were registered on the same object. To do this I need to check if the observer exists on the object.

Is this possible? I know with NSNotification you can use the NSNotification center singleton but is this the same for KVO?

2条回答
萌系小妹纸
2楼-- · 2019-04-24 09:21

No, there is no simple way that I'm aware of. KVO and NSNotification differs in that matter. Why don't you implement your solution with NSNotification instead of KVO if you need that functionality?

查看更多
贼婆χ
3楼-- · 2019-04-24 09:27

I dont know, how can you remove observers registered on the same objects.

But i think below method will help you to move little ahead to find your solution.

observationInfo

Returns a pointer that identifies information about all of the observers that are registered with the receiver.

- (void *)observationInfo

The default implementation of this method retrieves the information from a global dictionary keyed by the receiver’s pointers.

查看更多
登录 后发表回答