私がやろうとしているのは、最も単純な概念です。しかし、私は望ましい結果を得ていません。
私のアプリは標準のタブ バー アプリです。各タブのすべてのビュー コントローラーは縦向きのみをサポートしています。これはまさに私が望んでいるものです。
ただし、アプリの 1 つのセクションで、明らかにタブ バー コントローラーをカバーするモーダル ビュー コントローラーを表示します。これはテキスト入力画面であり、このビューが縦向きだけでなく横向きもサポートできるようにしてほしいと思います。次に、ユーザーがそのモーダル ビュー コントローラーをキャンセルすると、タブ バー コントローラーが再び表示され、すべてが縦向きになります。
私は非常に多くのことを試しましたが、何も機能しません。アプリに両方の向きをサポートするように指示すると、回転はモーダルで正しく発生しますが、アプリの残りの部分でも発生しますが、これは望ましくありません。
新しい shouldAutorotate メソッドと supportInterfaceOrientations メソッドをすべて実装しようとしましたが、何も機能していないようです。
ほとんどの作業に最も近い試みは、アプリのデリゲートに UITabBarController カテゴリを作成して、shouldAutorotate と supportedInterfaceOrientations を転送することでした。これは最初は機能しているように見えましたが、何らかの理由で、モーダル VC をキャンセルするたびに、アプリのタブ バー部分が常にステータス バーの後ろに 20 ピクセル上に移動していました。私はそれが何であるか分かりません。
UITabBarController が存在しないテスト アプリを作成しましたが、目的の動作を問題なくコーディングでき、完全に動作しました。明らかに、Tab Bar Controller に関する何かがこれを困難な問題にしています。
この単純な概念を解くコツを教えてください。
ありがとう!