iOS传值之通知传值(三)

输入所要发送的信息 ,同时将label的值通过button方法调用传递,

- (IBAction)buttonClick:(id)sender {

//添加 字典,将label的值通过key值设置传递

NSDictionary *dict =[[NSDictionary alloc]initWithObjectsAndKeys:self.textFieldOne.text,@"textOne",self.textFieldTwo.text,@"textTwo", nil];

//创建通知

NSNotification *notification =[NSNotification notificationWithName:@"tongzhi" object:niluserInfo:dict];

//通过通知中心发送通知

[[NSNotificationCenter defaultCenter] postNotification:notification];

[self.navigationController popViewControllerAnimated:YES];

}

在发送通知后,在所要接收的控制器中注册通知监听者,将通知发送的信息接收

- (void)viewDidLoad {

[super viewDidLoad];

//注册通知

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

}

- (void)tongzhi:(NSNotification *)text{

NSLog(@"%@",text.userInfo[@"textOne"]);

NSLog(@"-----接收到通知------");

}

时间: 2024-11-08 18:19:48

iOS传值之通知传值(三)的相关文章

iOS pop使用通知传值

iOS pop回父级页面,使用通知传值 输入所要发送的信息 ,同时将label的值通过button方法调用传递, - (IBAction)buttonClick:(id)sender { //添加 字典,将label的值通过key值设置传递 NSDictionary *dict =[[NSDictionary alloc]initWithObjectsAndKeys:self.textFieldOne.text,@"textOne",self.textFieldTwo.text,@&q

iOS 页面跳转传值,属性传值,代理传值,代码块传值,单例传值,通知传值

有时候我们在页面跳转的时候回传递相应的参数,如,你想把在第一个页面的文本框里的内容显示在第二个文本框中,或者你又想把第二个文本框中的内容改变之后到第一个页面的文本框中,所有,这个时候我们就要用到页面跳转传值 1.属性传值(正向传值) 属性传值是正向传值,只可以从前面一个页面传递到第二个页面,不可以从第二个页面传递到第一个页面 2.代理传值(逆向传值) 代理传值是逆向传值 代理传值步骤 代理传值 适用于 反向传值 1.1 创建协议 及协议方法 在反向传值的页面(SecondViewControll

iOS传值之代理传值

iOS中传值方式有好几种,分别是:代理传值,block传值,属性传值,通知传值,单例传值,利用userdefault或者文件方式传值,通常代理传值和block传值使用最普遍,本文介绍代理传值的方式,后续博客会一次写上其他传值方式. 一 什么是委托代理? 1.协议(protocol),就是使用了这个协议后,必须按照协议规定的内容来处理事情,协议中要求的方法必须实现(@optional的方法除外). protocol是一种语法,它提供了一个很方便的.实现delegate模式的机会. 定义protoc

iOS开发- 界面传值(1)-通知模式(广播)

之后的几篇博客, 记录下不同界面间传值的常用办法. 这篇文章记录广播的方式. iOS的设计模式中,通知模式也是其中重要的模式之一,Notification直译为通知,其实本人觉得叫做广播模式更为贴切.它的作用就是一个对象对多个对象的同步操作.用法很简单,一个对象发出一个广播,需要收听的听众就先注册一下,然后选定频道,完了就可以收听广播的内容了. 但是要注意一点, 在收听之前, 一定要先注册. 不然发送的广播接受不到, 也就是值改变了, 不会做出响应. 下面是一个简单的demo, 效果如下: 第一

iOS学习之六种传值方式

iOS页面传值方式 应用于: 两个互动的界面:1)页面一跳转到页面二,页面一的textField的值传给页面二的label.2)A页面跳转到B页面,B页面再跳转回A页面(注册页面跟登录页面) 两个不互动的两个界面:数据持久层跟表示层的数据交互. 几种传值方式: 属性传值  委托delegate方式 通知notification方式 block方式 单例模式方式 UserDefault或者文件方式 1.属性传值(顺传): 需要定义一个公开的属性 需要一个你需要传值的对象 进行属性赋值 实现:A.B

ios常见的页面传值方式

iOS页面间的传值细分有很多种,基本的传值方式有三种:委托Delegate传值.通知NSNotification传值.Block传值,其他在项目中可能会遇到的还有:UserDefault或文件方式传值.单例模式传值.通过设置属性传值,再有其他的传值方式没有遇到使用过在此不做说明.场景适合,自己使用舒服就是好的方式. 在iOS开发的过程中,常见的页面跳转传值方式大致可以分为两种,现归纳总结一下: 第一种:OneViewController页面跳转到TwoViewController页面(即顺传)

通知传值(NSNotificationCenter)

通知传值 //流程: 1.注册通知 2.通知中心,发送一条消息通知----------其中name名字千万不要写错了,会出现在3个地方 3.实现通知中心内部的方法,并实现传值 4.第四步,消息发送完,要移除掉 代码如下: #import "FirstViewController.h" #import "SecondViewController.h" #import "UIButton+Create.h" @interface FirstViewC

iOS 页面之间的传值总结

iOS 页面之间的传值总结   1.属性传值 (1): 属性传值第一步需要用到什么类型就定义什么样的属性 (2): 从上一个页面到一个页面的选中方法里面将要传的值传到来(上一个页面)备注:这种方法只适用于上一个页面推到下一个页面. 如:MainViewController与SecondViewController两个视图控制器,点击MainViewController中的按钮将跳转到SecondViewController视图,同时想要传递一个值过去.这时可以利用属性传值. 首先SecondVi

几个页面跳转以及传值(通知传值)

A→B→C→D→A 其中A不是根目录,但是在D上还要跳转回去,并且不用alloc,这时我们可以用如下方法 [self.navigationController popToViewController: [self.navigationController.viewControllers objectAtIndex: ([self.navigationController.viewControllers count] -4)] animated:YES]; 并且D要传值给A,这时通知就很好用了 通