1

昨夜、Interface Builder でサイズ クラスを操作していました。新しい xib ファイルを作成し、「iPhone」と「iPad」というタイトルの 2 つのボタンを追加しました。その意図は、すべての iPhone デバイスで「iPhone」ボタンを表示し、すべての iPad デバイスで「iPad」ボタンを表示することでした。

すべてが順調で、すべてのデバイスで期待どおりの結果が表示されていました。

しかし、問題はiPad 2 (iOS 7.0.4) で、タイトルが「iPhone」のボタンが表示されていました。 正しい結果を示していた次のデバイスでテストしました。

デバイス:

1) iPhone 3、4、5。

2) iPad 2 (iOS 8.1.1)

そのために、次の手順に従いました。

1) xib で新しい View Controller ファイルを作成しました。

2) Interface Builder ペインを「wConpact hRegular」に変更しました。

3) 「iPhone」というタイトルのボタンを追加し、水平方向の中央と上から 150px に見えるように制約を付けました。

4) Interface Builder ペインを「wRegular hRegular」に変更しました。

5) タイトルが「iPad」のボタンを追加し、水平方向の中央と上から 150px に見えるように制約を付けました。

私は使っている:

クロスコード: 6.1

ベースの SDK: 8.1

展開ターゲット: 6.1

デバイス : ユニバーサル

自動レイアウトを使用:チェックあり

サイズクラスを使用:チェックあり

結果のスクリーンショット:

1位)iPhone5s

2位)iPad2(iOS8.1.1)

3位)iPad2(iOS7.0.4)

iPhone5s

iPad 2 (iOS 8.1.1)

iPad 2 (iOS 7.0.4)

重要なのは、Storyboard を使用してデザインしても問題ないということです。 なぜこれが起こっているのかわかりませんか?不足しているプロパティや iOS のバグはありますか。

提案してください。前もって感謝します。

4

2 に答える 2

0

'Dave DeLong' hereに従って、私はこれに従うつもりです

アプリを iOS 7 にデプロイする場合、Xcode は次の 2 つの方法でストーリーボードをコンパイルします。

1) iPhone の場合、ストーリーボードは「コンパクトな幅、通常の高さ」としてコンパイルされます。

2) iPad の場合、ストーリーボードは「wRegular-hRegular」としてコンパイルされます。

于 2014-11-25T11:18:08.220 に答える
0

iOS 6 および 7 はアダプティブ レイアウトのサイズ クラスをサポートしていないため、デフォルトの「Any/Any」サイズ クラスが使用されます。

あなたの場合、ストーリーボードはデフォルトのサイズクラスに「iPhone」が付いたボタンがあると考えているため、iOS 7 を搭載した iPad には iPhone バージョンが表示されます。

于 2014-11-25T10:35:33.947 に答える