属性传值简单方便,但是也有缺点,例如耦合性太高,向多个对象传值不方便。
首先定义两个类,FirstViewController和SecondViewController
在AppDelegate.m文件中
self.window.rootViewController = [[UINavigationController alloc]initWithRootViewController:fV];
在第二个页面h文件中
#import <UIKit/UIKit.h>
@interface SecondViewController : UIViewController
@property(nonatomic,strong)NSString * str;
@end
在.m文件中
-(void)viewWillAppear:(BOOL)animated{
NSLog(@"%@",self.str);
}
在第一个页面中
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view.
//定义一个按钮
UIButton* button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
button.frame = CGRectMake(100, 100, 100, 100);
button.backgroundColor = [UIColor redColor];
[button addTarget:self action:@selector(doButton) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:button];
}
-(void)doButton{
SecondViewController * seV =[[SecondViewController alloc]init];
seV.str = @"传值成功";//属性所要传的值要写在推出下一个窗口前面
[self.navigationController pushViewController:seV animated:YES];
}