我有两个带有来自界面构建器的xib的UIViewController类,我想创建另一个带有xib的UIViewController,它包含这两个视图,它是否可能以及如何实现此功能?
答案 0 :(得分:0)
在第三个UIViewController xib中添加两个UIView,并将这些UIView与IBOulet链接。
@property (nonatomic, weak) IBOutlet UIView *firstView;
@property (nonatomic, weak) IBOutlet UIView *secondView;
之后,您可以在viewDidLoad中的这些子视图中添加UIViewController,例如:
- (void)viewDidLoad
{
[super viewDidLoad];
MyFirstViewController *myFirstViewController = [[MyFirstViewController alloc] initWitNibName:@"MyFirstViewController"];
MySecondViewController *mySecondViewController = [[MySecondViewController alloc] initWitNibName:@"MySecondViewController"];
[self.firstView addSubview:myFirstViewController.view];
[self.secondView addSubview:mySecondViewController.view];
}
使用第一个和第二个ViewController的@property以及延迟加载来改进它。
答案 1 :(得分:0)
您无法添加View控制器A和B的视图来查看XIB中的控制器C,因为您需要设置相当多的内务代码来设置父/子视图控制器关系。
但是,如果您要使用故事板,并且您在iOS 6或更高版本中运行,那么这将是微不足道的。在iOS 6中有一个新的“容器”视图。您只需在场景中添加一个容器视图,然后从容器视图控制拖动到另一个视图控制器的场景,并且IB设置一个嵌入式segue,它可以完成所有内容管理。您。在我看来,仅此功能就足以证明移动到故事板是正确的。