0

今日は、iphone4 および iphone5 と互換性のある iphone アプリケーションを作成します。以前に、以下のコードを使用してiphone5のコントローラーを調整することにより、iphone4アプリケーションビューをプログラムで変更しました。

 CGRect screenBounds = [[UIScreen mainScreen] bounds];
 if (screenBounds.size.height == 568) {
 // code for iphone5
 }
 else {
 // code for iphone4
 }

コントローラーのすべてのフレームとサイズを毎回追跡するのは難しいと考えています。サンプルアプリを1つ作成し、ビューの開始時に自動サイズ変更オプション(チェックマークを付けました)を試し、インスペクターでRetina 4フルスクリーンのサイズを選択しました。また、選択されたシミュレータ ハードウェア デバイスは iphone Retina-4 インチです。

iphone5に選ばれました

シミュレーターのハードウェア デバイスを変更すると、iPhone Retina-3.5 インチの場合、画面は次のようになります。

iphone4に選ばれました

私の質問は、フレームを設定せずに、どうすればこの問題を解決できるかです。私を助けてください。前もって感謝します。

4

3 に答える 3

4

このリンクを使用して自動サイズ調整できます

http://blog.mugunthkumar.com/coding/supporting-the-iphone-5/

于 2013-04-23T06:16:13.843 に答える
1

数値を与える代わりに、staticフレームを与えますdynamically。320 を与える代わりにself.view.frame.size.width、デバイスをチェックする必要がないことを意味します。デフォルトのスプラッシュ スクリーンを追加するだけで済みます。

于 2013-04-23T06:04:12.000 に答える
0

XCode Version 4.x で提供されている Autolayout 機能を使用すると、問題を簡単に解決できます。次のリンクを参照してください:-

http://www.raywenderlich.com/20881/beginning-auto-layout-part-1-of-2

Autolayout を使用していくつかの制約を適用することで、問題を簡単に解決できます。ハッピーコーディング:)

于 2013-04-23T06:14:40.003 に答える