ナビゲーション コントローラー内にビュー A を持つストーリーボードがあります。サブビュー B をビュー A に動的に追加します。サブビュー B にはテーブル ビューがあり、テーブル ビュー セルには詳細ビューへのシーク (プッシュ) があります。セルをクリックすると、prepareForSegue メソッドが呼び出されますが、詳細ビューは表示されません。シークをモーダルに切り替えると、サブビュー B があったビュー A 内に詳細ビューが表示されます。
私がやりたいのは、詳細ビューがナビゲーションコントローラーにプッシュされ、ユーザーが詳細ビューに戻ったときに、サブビュー B が埋め込まれた状態でビュー A に戻ることです。
以下は、サブビューを追加するために使用するコードです。
if(!self.homeViewController){
self.homeViewController = [self.storyboardinstantiateViewControllerWithIdentifier:@"HomeView"];
}
if(self.currentViewController != self.homeViewController)
{
[self.view insertSubview:self.homeViewController.view belowSubview:self.tabBar];
[self.currentViewController removeFromParentViewController];
}
self.currentViewController = self.homeViewController;