0

我正在(试图)实现一个主视图控制器容器,首先实例化介绍视图控制器,然后再实例化实际的应用程序视图控制器。但我无法让它工作,我觉得我错过了一些非常基本的东西。介绍视图控制器在 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 语句。

我一直在努力解决这个问题几个小时,任何帮助将不胜感激。

4

1 回答 1

2

-loadView只有在显式创建视图控制器 ( self.view)的视图时,才应覆盖该方法。删除您的-loadView方法并将初始化移动self.viewControllerIntroduction-viewDidLoad

于 2013-01-04T10:39:30.090 回答