我有一个导航控制器和2个视图控制器。第一个View Controller与一个名为ViewController的UIViewController相关联。第二个连接到名为BookVC的UIViewController。 BookVC具有的UITextField并经由出口连接:在MVC中连接数据
@property (strong, nonatomic) IBOutlet UITextField *textFieldContent;
的连接是与使用赛格瑞按钮制成。我想在二者之间传递一些数据,现在用的是下面的代码失败:
-(void) prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
BookVC* nextPage = [[BookVC alloc] init];
nextPage = [segue destinationViewController];
[email protected]"Some content";
}
我应该如何通过视图控制器之间的数据?
我觉得我几乎没有。我认为发送文件应该有: BookVC * nextPage = [segue destinationViewController]; UITextField * tf; tf.text = @“一些内容”; [nextPage setTextFieldContent:tf]; 但是,我不明白viewDidLoad语句。 \t [nextPage setTextFieldContent:tf]; – SimonRH 2012-04-26 02:48:39
第一个控制器不知道第二个控制器的文本字段。它只是设置将最终放置到'BookVC'的'textFieldContent'中的字符串。 'BookVC'的'-viewDidLoad'方法在加载时会自动调用。此时,您知道textFieldContent标签存在,并且其文本可以设置,因此您可以在此处执行此操作。查看'UIViewController'和'-viewDidLoad'方法的文档。 http://developer.apple.com/library/ios/#documentation/uikit/reference/UIViewController_Class/Reference/Reference.html – macserv 2012-04-26 03:05:56
忽略最后的评论。你的解释是完美的。谢谢! – SimonRH 2012-04-26 03:16:22