質問: ### 前提 * iOSアプリ * ネイティブアプリ ### 実現したいこと 仕様 * タブバーを持ち、タブのアイテム数は3つです * タブバーのルートになる各画面はナビゲーションバーを持ちます * ナビゲーションバーにはサイドメニューを表示するボタンがあります * サイドメニューは各タブ画面のトップには必ず付いています * サイドメニューに表示するコンテンツは共通です 図にすると下記のようになります。 ![画面仕様イメージ](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/abc80dc9ee0083dd933281a2543e9c39.jpeg) また、サイドメニューを実装するに当たってはContainer Viewを使用し下記のように作成するつもりです。 ![サイドメニュー実装](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/5772ea6ad85a34d4ad6d0f44927f9b10.png) 出典: 『iOS アプリ開発 - UI 実装であると嬉し いレシピブック 少しの工夫とアイデアでできる表現集 Just1factory 著』 ### 相談内容 みなさんであればどうするのかお聞きしたいです。 サイドメニューを各画面で表示するという上述の仕様を満たすために、各タブのルート画面となるViewControllerにて サイドメニューの実装(= Container Viewを使用しての実装)をしようと思っております。 ただこの場合、サイドメニューとして表示するコンテンツは同じものなのに、各画面でサイドメニューのUIを実装することになってしまいます。 可能であれば、サイドメニューを1つ作成し、それを各画面から呼び出せると構成は綺麗なのかなと思いました。 後者のような実装は可能でしょうか?(windowに貼り付ければ良い?) それとも前者のように、各画面で実装するのがベターなのでしょうか? みなさまであればどのようにされるのか伺ってみたく投稿させて頂きました。 些細なことでもご返答頂けますと幸いです。
回答: ベースとなる画面に2つのコンテナービューがあり、 一つがサイドバー用のビューコントローラー、 もう一つが「コンテンツ」ではなく、「ナビゲーション+タブの付いたビューコントローラー」にすれば悩みは解決しますかね?¥