标签:
一、中间传值
全局变量
1.存放中间值(放在Delegate--比较麻烦)
@property(nonatomic,strong) NSString *labelText;
2.保存值(放在应用程序对象里面)
YYAppDelegate *appDelegate = [UIApplication sharedApplication].delegate;
appDelegate.labelText = label.text;
3.取数据
YYAppDelegate *appDelegate = [UIApplication sharedApplication].delegate;
label.text =appDelegate.labelText;
二、正向传值
A — >B
局部变量
1.在B中设置一个属性保存值labelText
@property(nonatomic,strong) NSString *labelText;
2.保存值(在VA跳转到VB前)
YYGreenViewController *green = [[YYGreenViewController alloc]init];
green.labelText = label.text;
3.取数据,并设置
label.text =self.labelText;
三、反向传值
协议:代理(反向传值)
A <— B
1.创建协议代理(.h),并且声明方法(要做什么事,带参传值—就是你要传的值),
2.在B中的.h设置代理属性
@property(nonatomic,weak)id<协议名>delegate;
并在界面跳转前—————存值(.m)
[self.delegate 方法名: 要保存的东西];
3.A的(.h)遵守协议
4.在(.m)获得代理,
YYGreenViewController *B = [[YYGreenViewController alloc]init];
B.delegate = self;
5.拿到值实现协议的方法(A中)
uI基础--(5)UIViewController、中间传值、正向传值、反向传值
标签:
原文地址:http://www.cnblogs.com/iOSteemo/p/4313075.html