iPadのビューコントローラ(スプリットビューコントローラの詳細ビューとしてのナビゲーションコントローラ内)には、ナビゲーションバーが表示されたtopLayoutGuideの長さが64、ナビゲーションバーが隠された20があります。意味あり。iPhoneとiPadでtopLayoutGuideの長さが異なるのはなぜですか?
風景のiPhoneでは、ステータスバーが自動的に非表示になり、ナビゲーションバーが短くなります。 topLayoutGuideの長さは、表示されているナビゲーションバーでは32、隠れている場合は0です。これも意味をなさない。
ただし、iPhoneのポートレートでは、topLayoutGuideの長さは44で、ナビゲーションバーは表示され、0は非表示になっています。ステータスバーは自動的に表示されます。なぜtopLayoutGuideは余分な20ピクセルのスペースを認識しないのですか?
iPhoneがtopLayoutGuideを正しく読み込めるように、私は不快な条件付きコードを書いていません。 topLayoutGuideの直感的な値を返すように設定できるビューまたはナビゲーションコントローラのプロパティはありますか?スプリットビューコントローラの中にいることとは何か関係がありますか?
を助けることを願っていますが、私は私はIBでそれに何も固定していません、私はちょうどコードでそれを読んでいます: int rideTop = [self.topLayoutGuide length]; 次に、その値に基づいていくつかのラベルを配置します。しかし、私はその価値NSLog、私は前に述べた矛盾した値を取得します。 (そのコードは、分割ビューコントローラの詳細ビューであるビューコントローラにあります。) –