首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NSNotification监听

NSNotification监听
EN

Stack Overflow用户
提问于 2016-06-07 15:18:42
回答 1查看 586关注 0票数 1

我有多个NSWindowController实例,他注册了一个通知,以便在编辑发生时侦听。

现在,当我从windowcontroller的一个实例编辑某些内容时,通知被发布,该NSWindowcontroller的所有实例都会侦听该通知,但我只想让已更新其详细信息的实例侦听。

我怎样才能做到这一点呢?

EN

回答 1

Stack Overflow用户

发布于 2016-06-07 15:42:35

如参数object[NSNotificationCenter addObserver:selector:name:object:]方法文档中所述:

观察者要接收其通知的对象;也就是说,只有此发送者发送的通知才会传递给观察者。如果您传递nil,通知中心不会使用通知的发送者来决定是否将其传递给观察者。

所以只需将self作为对象传递即可。

例如。

注册通知:

代码语言:javascript
复制
[[NSNotificationCenter defaultCenter] addObserver:self
                                             selector:@selector(someSelector:)
                                                 name:@"SomeNotification"
                                               object:self]; // <- SELF!!

发布通知:

代码语言:javascript
复制
[[NSNotificationCenter defaultCenter] postNotificationName:@"SomeNotification"
                                                            object:self //<- SELF!!
                                                          userInfo:nil];
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37672887

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档