完成下面输入值传递的功能: 创建一个根视图控制器,加载在window上。并且添加一个lable标签和button按钮。单击button时,弹出一个模态视图。模态视图中包含一个返回按钮和textField输入框。修改textField的值并点击返回按钮返回到根视图时,将textField的值显示到label标签上。
下面用代理实现:
首先要清楚谁需要委托,Modal想要去修改label的值,但是他自己做不了这件事情,所以Modal需要找一个具备这样能力的一个委托人。
先来创建根视图控制器和模态视图控制器并设置label、button、textField:
RootViewController:
- (void)viewDidLoad {
[super viewDidLoad];
//背景颜色
self.view.backgroundColor = [UIColor grayColor];
//设置Label
UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(100, 100, 150, 50)];
label.tag = 101;
label.textAlignment = NSTextAlignmentCenter;
label.backgroundColor = [UIColor orangeColor];
[self.view addSubview:[label autorelease]];
//设置Button
UIButton *goButton = [UIButton buttonWithType:UIButtonTypeCustom];
goButton.frame = CGRectMake(100, 200, 150, 50);
goButton.backgroundColor = [UIColor orangeColor];
[goButton setTitle:@"跳转" forState:UIControlStateNormal];
[goButton addTarget:self action:@selector(btnClick:) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:goButton];
}