【IOS开发】通告中心NSNotificationCenter

在IOS开发中,通告的作用不言而喻,它在一个项目中就像是一个特权,不受类等的约束,方便至极,对于每一个通告,区分他们的标示是他们的名字name。


发送通告,发送通告时可以带一个参数,此参数需为NSDictionary字典类型:
NSMutableDictionary *dic = [[NSMutableDictionary alloc] init]; [dic setObject:@"I'm a notification!" forKey:@"content"]; [[NSNotificationCenter defaultCenter] postNotificationName:@"myNotification" object:self userInfo:(NSDictionary *)dic];



注册通告观察器:
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(getContent:) name:@"myNotification" object:nil]; 





接收到通告后调用方法:
- (void)getContent:(NSNotification *)note {     NSDictionary *dic = [note userInfo];     NSLog("The Content of myNotification : %@", [dic objectForKey:@"content"]); }  



10.26更新

通告中心不会保留观察器,在通告中心注册过的对象必须在释放前取消注册。否则,相应的通告再次出现时,通告中心仍然会像该观察器发送消息,因为相应的对象已经释放,所以会导致程序崩溃。

- (void)dealloc {      [[NSNotificationCenter defaultCenter] removeObserver:self];        [super dealloc];

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值