美文网首页
界面传值3:通知

界面传值3:通知

作者: 统领三界 | 来源:发表于2016-02-04 14:41 被阅读70次

本篇文章将介绍界面传值的第三个方法:通知.
对于通知,我们可以用一个形象的比喻来形容,假设有这么一个小区,小区内部有一公示栏,小区物业想要通知大家把窗帘都换成绿色的,该怎么办呢?物业当然可以安排工作人员一家一家的告知,但是这显然不是最明智的,最简单的方法是在公示栏上面张贴一个通知,通知的内容就是告诉大家要在某年某月某日之前把自家的窗帘都换成绿色,所有的业主,在进入小区的时候看到这样一通知后,就知道了物业的这一要求,然后就会实现这件事情就可以了.

而我们ios的通知的原理和流程其实很类似这个小区公示栏的作用,下面我看看是如何实现的.

首先我们需要有三个viewcontroller 通过导航视图控制器来管理,每个页面给定一个背景颜色,另外我们在第三个页面添加一个按钮,效果如下:

6A6A2AF4-4E91-47AD-AF72-893D8CB31764.png B19E6F93-2C38-4593-A11C-11EA9D0433F4.png 58ED543E-1826-4A33-B1BD-F02BD99A3D80.png

最终我们要实现的效果是,点击第三页的按钮,可以改变前两个页面的背景颜色,

第二步:我们要在这个按钮的点击事件里面添加注册通知的方法

-(void)btnClick:(UIButton *)sender{
    [[NSNotificationCenter defaultCenter] postNotificationName:@"changeColor" object:nil userInfo:@{@"color":[UIColor blueColor]}];
}

这段代码就相当于物业在公告栏上面张贴的通知,在刚才的比喻里面我们需要注意的是,只有本小区的业主才需要遵守通知的要求,非本小区业主是不需要理会的,同样在ios里面,不是每一页面都要去做响应通知的操作,只有这个页面在通知中心添加观察者后,才可以执行相应的操作,代码如下,可以写到viewdidload里面

    [[NSNotificationCenter defaultCenter] addObserver:self 
selector:@selector(changecolor:) name:@"changeColor" object:nil];

然后我们需要去实现changcolor的方法

-(void)changecolor:(NSNotification *)sender{
    self.view.backgroundColor = sender.userInfo
    [@"color"];
}

这样我们就实现了通知传值.

相关文章

  • ios界面传值2016.5

    五种方法 1.属性传值,适合界面A到界面B的传值2.单例, 多个界面传值3.通知 , 界面A跳...

  • 界面传值3:通知

    本篇文章将介绍界面传值的第三个方法:通知.对于通知,我们可以用一个形象的比喻来形容,假设有这么一个小区,小区内部有...

  • UI总结-界面传值

    UI总结-界面传值(属性传值,协议传值,block传值,通知中指传值) 在编程过程中,界面传值是很重要的一部分,常...

  • IOS开发 多界面传值

    本节学习内容: 1.多界面传值的基本概念 2.多界面传值的方法 3.多界面传值的应用 【多界面传值 属性】 cha...

  • iOS开发-通知的基本使用

    通知传值 界面之间的传值有很多方法,最基本的是可以实例化对象进行传值,也可以使用block块或者是使用通知进行传值...

  • iOS-传值方式

    传值方式:1、属性传值 方法传值2、代理传值3、单例传值 4、通知传值 NSNotificationCente...

  • React Native 传值方式

    界面与界面之间的传值 事件监听(通知) 事件回调(类与类之间的传值) 通过navigation带过去的参数实现事件...

  • IOS中通知中心的使用(传值)

    通知中心可以实现从后一个界面向前一个界面传值的功能。(这里认为是从b界面向a界面传值) 第三个界面的代码 NSDi...

  • SWIFT 通知传值

    通知传值 首先我们来看看通知传值,通知可实现任意界面之间的数据传递,但必须满足一个条件,就是保证在发送通知的时候监...

  • Swift:界面之间传值

    1、通知传值 首先我们来看看通知传值,通知可实现任意界面之间的数据传递,但必须满足一个条件,就是保证在发送通知的时...

网友评论

      本文标题:界面传值3:通知

      本文链接:https://www.haomeiwen.com/subject/okmekttx.html