私は Xcode 4.5 と iPhone 4 および 5 シミュレーターを使用しています。Interface Builder は、画面の上半分に UIButton を上部の制約付きで追加し、画面の下半分に UIButton を下部の制約付きで追加します。
iPhone 5 シミュレーターでは正常に動作しますが、iPhone 4 シミュレーターでは、ボタンが重なったり、下のボタンが上のボタンの上に配置されることさえあります。
一番下のボタンは「下マージンから250ポイント離れていなければならない」などの制約によるものだと思います。制約が削除できず、「250点以下」に変更しても機能せず、「250点以上」に変更しても機能しません。
次の方法はありますか?
1) 制約を持たないようにしますが、絶対 x と y に配置するだけですか? (または、iPhone 5 ではすべてがより間隔を空けられるように、過去のスプリングはどうなったのでしょうか?)
2) NIB を iPhone 4 および 4S 専用のものにして、アプリが iPhone 4 および 4S で適切に機能し、iPhone 5 では「黒いバー」だけが動作するようにします。
3) iPhone 5 でうまく動作し、iPhone 4 でもうまく動作するようにしますか?
上記の (1)、(2)、または (3) のみの解決策を知っている場合は、移行期間中の実行可能な解決策であるため、それを提供してください。
Xcode 4.5 を使用して単純なシングル ビュー アプリを作成し、1 つのボタンを画面の中心点のすぐ上にドラッグし、別のボタンを画面の中心点のすぐ下にドラッグします。次に、シミュレーターで実行します。iPhone 5 では、次のようになります。
アプリを停止し、シミュレーターのデバイスを iPhone 4S (3.5 インチ Retina) に変更します。最初にアプリを停止しないと、シミュレーターがクラッシュする可能性があります。アプリを再度実行すると、ボタンが重なります。