我在故事板中有一个Container View
的场景。正如您可能想的那样,我希望其关联的UIViewController
在那里加载另一个UIViewController
作为子视图控制器,并将其视图显示为子视图。
因此,在父UIViewController
中我定义了属性:
@property (weak, nonatomic) IBOutlet UIView *containerView;
@property (strong, nonatomic) MyChildViewController *childController;
然后,在父母的viewDidLoad
方法中,我这样做:
if (self.childController == nil) {
self.childController = [[MyChildViewController alloc] init];
}
[self addChildViewController:self.childController];
self.childController.view.frame = CGRectMake(0, 0, self.containerView.frame.size.width, self.containerView.frame.size.height);
[self.containerView addSubview:self.childController.view];
[self.childController didMoveToParentViewController:self];
self.childController.view
和self.containerView
都不是nil
,但是当我运行应用时,self.childController.view
不显示...我可以丢失什么?
由于
答案 0 :(得分:2)
我终于注意到了我所忽略的......因为我还在MyChildViewController
的故事板中创建了一个场景,我需要从那里实例化它。