1

自動レイアウトを使用するアプリを更新して、iPhone 6 の解像度をネイティブにサポートします。iPhone 6 の起動イメージを追加し、ほとんどのビューが適切にスケーリングされました。

ただし、小さな問題が発生しています。新しいビュー コントローラーをロードすると、ビューUIViewControllerの のviewDidLoadメソッドで iPhone 5 の解像度になります。を押したときのみ、ビューは iPhone 6 の解像度を取得しますviewWillAppear

どうしてこれなの?viewDidLoadビューの最終的な解像度を既にオンにするために構成または変更できるものはありますか?

4

1 に答える 1

2

ビューからジオメトリ データを取得する適切な場所は、メソッド内にあると思います。

- (void)viewDidLayoutSubviews;

これは、自動レイアウトがビューの配置を終了したときに呼び出されます。このメソッドは複数回、つまりデバイスの回転後に呼び出すことができることに注意してください。

編集

インターフェイス ビルダーには、シミュレートされたメトリックのサイズを設定するオプションがあります。これがインターフェイスビルダーが表示するものだけに関係しているのか、それともロード時のビューのフレームに関係しているのかはわかりません。変更して試してみてもいいかもしれません。

スクリーンショット

于 2014-09-16T13:44:09.200 に答える