首页 > 其他 > 详细

NSNotification的使用(对观察者模式最通俗、易懂的讲解)

时间:2014-03-12 16:30:55      阅读:475      评论:0      收藏:0      [点我收藏+]

这是一个观察者模式。

首先在你需要监听的类中加入观察者:

- (void)addObserver:(id)observer selector:(SEL)aSelector name:(NSString *)aName object:(id)anObject;

这个观察者在监听到anObject发送名字为aName的notification时,调用selector的方法,在aSelector方法中得到userInfo。
anObject表示从谁那儿发送出来的消息。

比如:

[[NSNotificationCenterdefaultCenteraddObserver:selfselector:@selector(onWebClose)name:@"WebClose"object:nil];

也就是说监听到了object:nil发出消息,消息的名字是WebClose,此时observer就调用onWebClose方法。

如果object:nil表示以广播方式发消息或者得到消息,这个时候只要消息名字是对的就可以得到这个消息。

然后在被监听的类中发送通知:

 

[[NSNotificationCenterdefaultCenterpostNotificationName:@"WebClose"object:nil];

这样观察者就接到了消息会调用selector方法;

最后记得移除这个观察者:

 

[[NSNotificationCenterdefaultCenterremoveObject:self];

这个的好处是:完全两个不相干的view可以建立起来联系;

 

例子代码:

NSNotification的使用(对观察者模式最通俗、易懂的讲解),布布扣,bubuko.com

NSNotification的使用(对观察者模式最通俗、易懂的讲解)

原文:http://www.cnblogs.com/ygm900/p/3596345.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!