私は iPhone アプリを作成しており、大部分の UI にストーリーボードを使用しています。iOS 6 用の xCode 4.6 を使用しています。
アプリを iphone4 サイズと iphone5 サイズの両方で機能させる方法はありますか?
iPhone 4 シミュレーターでアプリを実行すると、想定どおりに表示されません。UI 要素がストーリーボードのように表示されません (iPhone5 サイズを使用していると想定しています)。
さらに情報が必要な場合はお知らせください。
ビューとデバイスの高さに動的にアクセスし、それらの値に基づいて調整を行うことができます。または、iOS 6 の制約を使用して、デバイスの下部または他の要素間にマージンを設定することもできます。
前者を実現するには、ビューの高さプロパティにアクセスするだけです:
CGFloat height = [[self view] frame].size.height;
次のように、デバイスの画面の高さを取得することもできます。
CGFloat deviceHeight = [[UIScreen mainScreen] bounds].size.height;
deviceHeight -= 20; // remove the tab bar
deviceHeight -= 44; // remove height for a navigation bar?
この値に基づいてビューの原点を調整することを想像してください。どちらを使用していても、デバイスの下部にぴったりと収まるようにすることができます。
[aView setFrame:CGRectMake(10, deviceHeight - 10 - 100, 300, 100)];
要素のレイアウトを調整できない場合は、スクロール ビューの使用も検討してください。上記の手法を使用してフレームを設定し、コンテンツ サイズを設定するだけです。小さいデバイスでは、スクロールしてより多くのコンテンツを表示できますが、大きいデバイスでは、すべてがすぐそこにあります。