我(尝试)实现主视图控制器容器,以便稍后实例化介绍视图控制器,然后实际应用程序视图控制器。但我无法让它工作,我觉得我错过了一些非常基本的东西。介绍视图控制器在initWithFrame的引入视图中加载:
使用以下界面:
@interface ViewControllerMain : UIViewController
@property (strong, nonatomic) ViewControllerIntroduction *viewControllerIntroduction;
@end
以下实施
@implementation ViewControllerMain
- (void)loadView
{
// Instantiate the view controller for the adventure view
self.viewControllerIntroduction = [ [ [ ViewControllerIntroduction alloc] init ] autorelease ];
}
- (void)viewDidLoad
{
[ super viewDidLoad ];
// Instantiate the view controller for the introduction view
[ self addChildViewController: self.viewControllerIntroduction ];
[ self.view addSubview: self.viewControllerIntroduction.view ];
[ self.viewControllerIntroduction didMoveToParentViewController: self ];
}
@end
当我跳过addSubView语句时,它会回到addChildViewController语句。
我一直在努力解决这个问题几个小时,任何帮助都会受到赞赏。
答案 0 :(得分:2)
只有在明确创建视图控制器的视图(-loadView
)时,才应覆盖self.view
方法。移除-loadView
方法并将self.viewControllerIntroduction
的初始化移至-viewDidLoad
。