2017-01-05 7 views
1

POSTUITabBarController内のUISplitViewController - SplitViewナビゲーションバーグリッチ/バグまたは何か間違っていますか?

、問題のEND AT質問:UITabBarControllerでそれを埋め込むとき、私はUISplitViewControllerの奇妙な行動を発見しました。セットアップは静かでシンプルで、コーディングなしで再現することができます。 StoryBoardベースのアプリケーションを作成し、UITabBarControllerをStoryBoardにドラッグし、初期ビューコントローラにします。次にUISplitViewControllerをボード上にドラッグし、U ITabBarControllerの項目にします。詳細ビューコントローラUISplitViewControllersUINavigationControllerに埋め込みます。最後に、マスターおよびディテールビューコントローラーの背景色を目立つように設定します。

ストーリーボードは、次のようになります。 enter image description here

ステップ1:を実行し、同じ時間(例えばiPadやiPhoneの大画面。。)で、マスターとディテールを表示することができ、デバイス上のアプリケーション。あなたはマスターが棒の下に伸びておらず、代わりにUISplitViewControllerの背景が輝いていることに気づくべきです。 enter image description here

ステップ2:マスタが折りたたまれますのでは、肖像に画面を回転。マスターを明らかにするために横からスワイプします。この時点で、両方のナビゲーションバーが正しい背景色を表示しています。 enter image description here

手順3:画面を横に戻します。今度は細部にUISplitViewControllerの背景があり、マスターは正しい色を表示しています。 enter image description here

所見:

  • スタートでは、マスターのテーブルビューには、ナビゲーションバーの下に拡張されていません。
  • がポートレートモードでマスターを公開し、次に戻ってきた場合にのみ、glichが変更され、マスターがバーの下に伸び、ディテールはもう消えます。
  • 肖像画でマスターを明らかにしていない場合は、あなたが望むように、あなたが行動
  • を変更することなく、何度でもを回転させることができそれだけ埋め込む場合にのみ起こる
  • 同時にマスターとディテールを表示することができますデバイス上で起こります

    • なぜマスターとディテールが関数expされていません。UITabBarController

    質問でUISplitViewControllerナビゲーションバーの下に正しく表示されていますか?

  • なぜこれはiPad/iPhone Plusでのみ発生し、通常のiPhoneでは発生しません(すべて正常に動作します)。
  • iPadでこの作業を行うために適用できる修正はありますか?
  • マスターディテールフローが埋め込まれたTabBarを使用するよりも優れた設計アプローチがありますか?私のために、TabBarはアプリ内のさまざまなタイプのコンテンツを切り替えるのが正しいと思われ、iPadsでは全幅のテーブルビューを望んでいません。 SplitViewControllerは、コンテンツを表示するための正しいアプローチと思われます。

答えて

0

5か月後にはまだ解決策がありません。さらに、別のアプリを開発している間にこの問題に遭遇したとき、私は同じ問題がある2015年のこの古い記事を見つけました:Navigation bar for split view controller is darker when inside a tab bar controller

Appleは自分のコントローラを固定するつもりはないと思います。 。上記のUISplitViewControllerを適切な半透明のUINavigationBarsとともに表示しながら、下部にUITabBarを持つ唯一の方法は、独自のコンテナビューコントローラを実装することです。

最終的に私のUISplitViewControllersの表示/非表示にUIViewControllerの包含APIを使用している最中に、UITabBarを下に固定したプレーンなUIViewControllerを使用して問題を解決しました。

関連する問題