IOS NSNotification Center 通知中心的使用(烟台杰瑞教育IOS培训部原创).docxVIP

IOS NSNotification Center 通知中心的使用(烟台杰瑞教育IOS培训部原创).docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
IOS NSNotification Center 通知中心的使用(烟台杰瑞教育IOS培训部原创)

 HYPERLINK / 烟台杰瑞教育科技有限公司( HYPERLINK / IOS开发培训部) 版权所有 ------ HYPERLINK / 杰瑞教育( HYPERLINK  ) 专注IT技能培训 打造一流 HYPERLINK / 人才服务平台------ IOS NSNotification Center 通知中心的使用   通知中心,它是IOS程序内部的一种消息广播机制,通过它,可以实现无引用关系的对象之间的通信。通知中心他是基于观察者模式,它只能进行程序内部通信,不能跨应用程序进程通信。当通知中心接受到消息后会根据设置,将消息发送给订阅者,这里的订阅者可以有多个。   通知中心与代理模式类似,都可以实现多个对象间通信,通知中心可以将一个通知发送给多个监听者,???代理模式每个对象只能添加一个代理。但无论是那种模式,都是一种低耦合的设计,实现对象间的通信。 使用通知中心的步骤 1、注册观察者对某个事件(以字符串命名)感兴趣,并设置该事件触发时执行的Selector或Block 2、NSNotificationCenter在某个时机激发事件(以字符串命名) 3、观察者在收到感兴趣的事件时,执行相应地Selector或Block 4、移除通知 通知中心案例   利用导航添加三个界面,在第三个界面上添加一组按钮,当点击按钮的时候,设置当前页面背景色为按钮颜色,并发送通知,将前面两个界面背景色也设置为选择的颜色,程序框架和界面如图所示   (1)注册通知,在界面三的viewDidLoad方法中,为界面一和界面二注册通知,当发送通知的时候,会去界面一和界面二中调用对应的方法   界面三中代码: - (void)viewDidLoad { [super viewDidLoad]; SecondViewController *secondVC = [self.navigationController.viewControllers objectAtIndex:1]; ViewController *firstVC = [self.navigationController.viewControllers firstObject]; //注册通知 [[NSNotificationCenter defaultCenter] addObserver:secondVC selector:@selector(changeBgColor:) name:kNotificationName object:nil]; [[NSNotificationCenter defaultCenter] addObserver:firstVC selector:@selector(changeBgColor:) name:kNotificationName object:nil]; }   ps:kNotificationName 是通过宏定义定义的字符串   (2)??? 在界面三点击颜色按钮时,换背景色,并且给界面一和界面二发送通知   界面三中代码: - (IBAction)chooseBgColor:(UIButton *)sender { NSArray *colorArray = @[[UIColor redColor],[UIColor blueColor],[UIColor greenColor],[UIColor purpleColor],[UIColor whiteColor],[UIColor blackColor],[UIColor orangeColor],[UIColor yellowColor],[UIColor brownColor]]; self.view.backgroundColor = [colorArray objectAtIndex:sender.tag-1]; //引发通知 [[NSNotificationCenter defaultCenter] postNotificationName:kNotificationName object:[colorArray objectAtIndex:sender.tag-1]]; }   (3)在界面一和界面二中处理通知,更改界面背景色   界面一和界面二中代码: -(void)changeBgColor:(NSNotification *)notification { [self.view setBackgroundColor:notification.object]; }   (4)在界面三

文档评论(0)

yaobanwd + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档