0

次の点を考慮する必要があります。

statusBar (ホット スポットがある場合は 40 ポイントになる可能性があります) TabBar NavigationBar。

基本的にviewDidLoadで、ビューのサイズが320 * 480であることがわかります。

私の画面の画面サイズとして、iOSはどこでそれを決定したのだろうか。UIStoryBoard を使用しています。

したがって、viewDidLoad では、サイズを変更するつもりでした。

これが正しいアプローチであるかどうかさえわかりません。

注:ストーリーボードを使用しないと、直面している問題は発生しないようです。

viewDidLoad で、XIB を使用すると、UInavigationController と UITabBar により、self.view の内容は正しく、480 ではなく 416 になります。

4

1 に答える 1

1

UIViewController viewWillLayoutSubviewsメソッドをオーバーライドしてみてください。それまでにビューのフレームが設定されます。

このviewWillLayoutSubviewsメソッドでは、View Controller のメイン ビューは、知っておく必要があるサイズです。ステータス バーとナビゲーション バー、およびツールバーとタブ バー用に調整されています。方向性も考慮しています。サイズがどうなるかを尋ねることができる単一の方法はありません。また、そのような質問をする必要はありません。で必要なすべてのサブビューを作成しますviewDidLoad。ただし、ビューのサイズに基づいてレイアウトしますviewWillLayoutSubviews

于 2012-11-19T18:05:04.007 に答える