> – addobserver:selector:name:object
> – addobserverForname:object:queue:usingBlock:
> – removeObserver:
> – removeObserver:name:object @H_419_11@在实例方法的重写实现中,您将使用字典跟踪给定通知名称的观察者。在每个被覆盖的实例方法中,最后可以调用NSNotificationCenter的各自的超级方法。此外,您将提供一种方法来检索您自己的给定名称的观察者列表,例如: @H_419_11@
- (ID)observerForNotificationname:(Nsstring *)name@H_419_11@然而,这种方法有两个问题:首先,NSMutableDictionary将保留所有观察者在一个天真的实现中,这可能不是NSNotificationCenter实现的行为。其次,您必须通过[NSNotificationCenter defaultCenter](或任何其他NSNotificationCenter实例)更改获取默认通知中心的代码,以便使用您的自定义子类。 @H_419_11@请注意,第一个问题可以使用具有弱引用回调的CFDictionary,相应观察者的container class with a weak reference,或者如果您在Mac OS X上的垃圾回收环境中,可以解析NSHashtable。 总结
以上是内存溢出为你收集整理的objective-c – NSNotificationCenter:观察员列表?全部内容,希望文章能够帮你解决objective-c – NSNotificationCenter:观察员列表?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)