私はUIStoryboard10以上UIViewControllersと追加のを持っていましたContainerViews。ビューをレイアウトし、ますますカスタマイズした後、UIStoryboardますます怠惰になりました。
私のアプローチは、single内にビューを設定することでしたUIStoryboards。コントローラのロードはメニュー内で行われます。ここで、のNSArrayすべての識別子を使用してを設定します。UIViewControllerこれもUIStoryboard:内で設定する必要があります。

メニューをロードするとき、私はループして、特定のからのby識別子NSArrayをロードします。これは私が別のスイッチを実装する必要があった場所です:UIViewControllersUIStoryboardUIStoryboards
self.arrayVCAll = [NSMutableArray new];
for ( NSArray *array in _arrayViewControllerAll ){
NSMutableArray *arrayTemp = [NSMutableArray new];
for (UIViewController *vc in array ){
NSString *strViewController = [NSString stringWithFormat:@"%@", vc];
UIStoryboard *storyboard;
if( [strViewController isEqualToString:@"CustomOneStoryboard"] ){
storyboard = [UIStoryboard storyboardWithName:@"FirstVC" bundle:nil];
} else if( [strViewController isEqualToString:@"CustomTwoStoryboard"] ){
storyboard = [UIStoryboard storyboardWithName:@"SecondVC" bundle:nil];
} else {
storyboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil];
}
UIViewController *controller = [storyboard instantiateViewControllerWithIdentifier:strViewController];
MyNavController *nav = [[MyNavController alloc] initWithRootViewController:controller];
[arrayTemp addObject:nav];
}
[self.arrayVCAll addObject:arrayTemp];
}
UINavigationController私の場合、イニシャルを私のから分離した後、セグエに問題がありましたUIViewControllers。イニシャルがない場合、セグエはnavigationControllerにプッシュしませんUINavigationController。そのため、(NSArrayの)UINavigationControllerそれぞれにを追加して、正しく実行されるようにしました。また、クラスに接続する必要はありません。クラスに含めて、最初のに接続するだけです。UIViewControllerUIStoryboardSegueUINavigationControllerUIStoryboardUIViewController