我的主视图控制器中有一个文本字段。.并且我正在使用FPPopover在主视图控制器上显示另一个视图控制器。.我想从FPPopoverController获取用户名,然后在主文件中输入一个文本字段查看控制器。我尝试了以下方法,但没有奏效。

 MasterViewController *vc = [[MasterViewController alloc] init];
  vc.nameTextField.text = self.nameField.text;


    UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard_iPhone" bundle:nil];
    MasterViewController *vc = [storyboard instantiateViewControllerWithIdentifier:@"MasterViewController"];

    vc.nameTextField.text = self.nameField.text;

我还能尝试什么?
谢谢。

最佳答案

我认为委派是最好的方法,但最简单的方法是使用通知。

MyPopoverViewController实现

- (void)doneButtonPressed:(id)sender{
    [[NSNotificationCenter defaultCenter] postNotificationName:@"notification"
                                                        object:self
                                                      userInfo:@{@"aKey":self.textfield.text} ];
}

在您的主视图控制器中的viewdidload方法
[[NSNotificationCenter defaultCenter] addObserver:self
                                         selector:@selector(updateTextField:)
                                             name:@"notification"
                                           object:nil];

最后添加此方法。
- (void)updateTextField:(NSNotification *)notification {
     self.nameTextField.text = [notification.userInfo objectForKey:@"aKey"];
}

关于ios - 从其他ViewController iOS更新UITextField,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16878613/

10-14 22:14