2

XCode 5 で iPhone 4 (3.5 インチ画面) と iPhone 5 (4 インチ画面) を使用して、起動用のアプリを準備し、iOS 7 のテストを行っています。問題は特に iPhone 4 のコンテンツです。下部のバー (バー項目を含む) は表示されません。

表示できる唯一の方法は、実行する前にストーリーボードに移動し、サイズを「推測」から網膜 3.5 インチに変更することです。私の解決策は、3.5 インチと 4 インチの 2 つのストーリーボードを作成することでしょうか?

それ以外の場合は、プログラムでデバイスを検出し、コンテンツを上下にシフトする方が理にかなっていますか?

 CGSize screenSize = [[UIScreen mainScreen] bounds].size;

 if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone) {
if (screenSize.height > 480.0f) {
    /*Do iPhone 5 stuff here.*/
} else {
    /*Do iPhone 4 stuff here.*/
}
 } else {
/*Do iPad stuff here.*/
 }
4

2 に答える 2

5

理論的にはその方法をとることもできますが、より良い方法は、ストーリーボードで autolayout を使用することです。ストーリーボードに移動し、ファイル インスペクタで [自動レイアウトを使用] チェックボックスをオンにします。次に、ストーリーボードでレイアウトを選択し、Editor -> Resolve Auto Layout Issues -> Reset to suggested constraints for _____

必要な場所にすべてが表示されるようにするには、制約を微調整する必要がある場合があることに注意してください。そのためには、Auto Layouts に関する Apple のドキュメントが役立ちます。

于 2013-10-24T19:13:34.030 に答える