例如,我有一个文本字段,记录用户名,单击按钮后,它将显示下一个视图,我想要下一个视图ge文本字段数据,并显示在第二个视图中,如何我能这样做吗?
答案 0 :(得分:5)
听起来你没有遵守MVC惯例。
如果您有一组单独的“模型”类,只保存数据,您的第一个视图将使用文本视图中的更改(当您离开或离开视图时)更新它。 第二个视图将从模型中获取其数据 - 因此它将获得更新的字段。
如果您有多个视图同时引用同一模型“实时”,您可能还需要查看key-value coding。
答案 1 :(得分:2)
作为一般规则,您需要创建视图控制器的属性以接收将填充其视图的数据。因此,假设您的文本字段是属性,您可以写:
myViewController.text_field.text
其中myViewController
是您要向用户显示的视图控制器。
答案 2 :(得分:0)
通
text_field.text
以任何你喜欢的方式到第二个视图
答案 3 :(得分:0)
这是一个很好的例子,说明如何从Apple将一个变量(使用MVC)从一个控制器(细节)传递到下一个(编辑)。
在详细视图中(将Book传递给EditingViewController):
EditingViewController *controller = [[EditingViewController alloc] initWithNibName:@"EditingView" bundle:nil];
controller.editedObject = book;
...
[self.navigationController pushViewController:controller animated:YES];
[controller release];
在编辑视图(EditingViewController)中:
- (IBAction)save {
...
[editedObject setValue:datePicker.date forKey:editedFieldKey];
[editedObject setValue:textField.text forKey:editedFieldKey];
}
[self.navigationController popViewControllerAnimated:YES];
}