在父视图控制器中,我在视图加载时添加了一个子视图控制器:
// In the parent
- (void) viewDidLoad
{
[super viewDidLoad];
self.tokenFieldViewController = [[TokenFieldViewController alloc] init];
[self addChildViewController:self.tokenFieldViewController];
[self.view addSubview:self.tokenFieldViewController.view];
self.tokenFieldViewController.view.frame = self.view.bounds;
[self.tokenFieldViewController didMoveToParentViewController:self];
}
本质上,这个子视图控制器在其视图中有一个文本字段:
// In the child
- (void) loadView
{
self.view = [[UIView alloc] init];
self.textField = [[UITextField alloc] initWithFrame:CGRectMake(0,0,99,99)];
[self.view addSubview:self.textField];
}
像这样编码时,文本字段不可点击。也就是说,点击它不会将闪烁的光标放入其中。但是,当我在父视图控制器中添加子视图控制器时viewDidAppear
,文本字段开始工作。我想知道如何修复它viewDidLoad
,因为我需要孩子的生命周期与父母的生命周期相匹配。