iOS NSNotification(通知)传值

//联系人:石虎QQ: 1224614774昵称:嗡嘛呢叭咪哄

/**

注意点: 

1.看 GIF 效果图.

2.看连线视图的效果图.

3.看实现代码(直接赋值实现效果).

*/

一、GIF 效果图:

二、连线视图的效果图:

图1:

图2:

三、实现代码:

=========================

===================================================

==========================

控制器1:

//  ViewController.m

//通知测试dome

//

//  Created by石虎on 2017/7/22.

//  Copyright © 2017年shihu. All rights reserved.

//

#import"ViewController.h"

#import"SHTwoViewController.h"

@interfaceViewController()

//显示传值的内容

@property(weak,nonatomic)IBOutletUILabel*textStrng;

//跳转

- (IBAction)notificationClick:(UIButton*)sender;

@end

@implementationViewController

- (void)viewDidLoad {

[superviewDidLoad];

//注册通知----第一部

[[NSNotificationCenterdefaultCenter]addObserver:selfselector:@selector(showLabelText:)name:@"labelTextNotification"object:nil];

}

//实现通知监听---第二部

- (void)showLabelText:(NSNotification*)notification

{

//第三,实现通知中心内部的方法,并实现传值

idtext = notification.object;

//赋值到文本上面

self.textStrng.text= text;

}

//释放通知---第四部

- (void)dealloc

{

//第四步,消息发送完,要移除掉

[[NSNotificationCenterdefaultCenter]removeObserver:selfname:@"labelTextNotification"object:nil];

}

#pragma mark -//点击通知跳转

- (IBAction)notificationClick:(UIButton*)sender{

SHTwoViewController*twoVC =[[SHTwoViewControlleralloc]init];

[selfpresentViewController:twoVCanimated:YEScompletion:nil];;

}

@end

=========================

===================================================

==========================

控制器2:

/  SHTwoViewController.m

//通知测试dome

//

//  Created by石虎on 2017/7/22.

//  Copyright © 2017年shihu. All rights reserved.

//

#import"SHTwoViewController.h"

#import"ViewController.h"

@interfaceSHTwoViewController()

//输入要传值的文字

@property(weak,nonatomic)IBOutletUITextField*TextField;

//开始传值

- (IBAction)startValue:(id)sender;

@end

@implementationSHTwoViewController

- (void)viewDidLoad {

[superviewDidLoad];

}

//开始传值

- (IBAction)startValue:(id)sender

{

//发布通知----第三部

[[NSNotificationCenterdefaultCenter]postNotificationName:@"labelTextNotification"object:self.TextField.text];

[selfdismissViewControllerAnimated:YEScompletion:nil];

}

-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent*)event {

[self.viewendEditing:YES];

}

@end

谢谢!!!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容