要想页面传值,首先就得有两个以上的页面,并且能够互相跳转。
先创建一个工程,之后就再新建一个页面。我取名为SecondViewController
编辑ViewController.m文件:
这个页面是我们默认的打开后的第一个视图页面,在该页面我们手动创建一个按钮。
@interface ViewController ()
// 按钮 用来跳转到页面2
@property (nonatomic, strong) UIButton *btn;
@end
接着通过懒加载的方式实例化按钮控件
- (UIButton *) btn {
if (_btn == nil) {
_btn = [[UIButton alloc] initWithFrame:CGRectMake(100, 200, 200, 40)];
_btn.backgroundColor = [UIColor redColor];
// 设置按钮默认文字
[_btn setTitle:@"页面2" forState:UIControlStateNormal];
// 设置按钮文字颜色
[_btn setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal];
// 为按钮绑定事件
[_btn addTarget:self action:@selector(toPage2) forControlEvents:UIControlEventTouchUpInside];
}
return _btn;
}
创建按钮点击事件
- (void) toPage2 {
SecondViewController *secondPage = [[SecondViewController alloc] init];
[self presentViewController:secondPage animated:YES completion:nil];
}
将按钮添加到页面1中
- (void)viewDidLoad {
[super viewDidLoad];
// 将控件添加到页面中
[self.view addSubview:self.btn];
}
至此,页面1的功能就ok了,接着去完善页面2的功能。
编辑SecondViewController.m文件:
和页面1一样,我们先创建一个按钮,同时设置点击事件,其它地方都一样,不再赘述,唯一有修改的就只有事件
- (void) backPage1 {
[self dismissViewControllerAnimated:YES completion:nil];
}
页面2默认的背景色是黑色的,我们可以手动设置为别的颜色
- (void)viewDidLoad {
[super viewDidLoad];
// 设置页面背景色为白色
self.view.backgroundColor = [UIColor whiteColor];
[self.view addSubview:self.btn];
}
到这里两个页面之间就可以互相跳转了,完成了这个功能之后就可以接着完成传值的功能。以后再慢慢贴上。