1

私は iOS 開発から少し離れており、障害に直面しています。

私のアプリの 1 つに UIImageView グラフィックがあり、ビジュアルをオーバーレイするボタンがあります。自動レイアウトを除いて、すべてを機能させることができます。

ペン先を 3.5 に設定し、シミュレーターを 3.5 モードで実行すると、すべてがうまく機能します。4.0 モードで実行すると、ボタンがすべてシフトします。この逆もまた同様である。

動くボタンを回避する方法がわかりません。方法はありますか、または2つのニブが必要ですか?

4

3 に答える 3

2

IB を使用していない場合は、それに基づいてビューとレイアウトのサイズを取得します。

私は通常、verticalOffset (NSInteger) に単一の値を使用し、インターフェイス要素に応じて異なる倍数の値を使用して、Y 値をベースにします。

CGRect screenBounds = [[UIScreen mainScreen] bounds];

if (screenBounds.size.height == 568) { // iPhone 5
    verticalOffset = 20;
} else {
    verticalOffset = 0;
}

将来、Apple が高さ 768 ピクセルの iPhone 5.5 をリリースした場合 (冗談です.. ハ!)

新しい verticalOffset 値を追加するだけで、ビューは即座に新しいサイズでいっぱいになります。

CGRect screenBounds = [[UIScreen mainScreen] bounds];

if (screenBounds.size.height == 768) { // iPhone 5.5
    verticalOffset = 30;
} else if (screenBounds.size.height == 568) { // iPhone 5
    verticalOffset = 20;
} else {
    verticalOffset = 0;
}

古いiOSバージョンをサポートしたい場合のIB / iPhoneの簡単な方法は、自動レイアウトをオフにします

オートレイアウトをオフにする

上部の値の自動サイズ変更をオフにします。

ここに画像の説明を入力

iPhone 5 の IB でビューをレイアウトします。iPhone 3.5 を使用する場合、すべてのインターフェイス要素が 3.5 インチのサイズに収まります (背の高いサイズでレイアウトする場合は、十分な余白を残すようにしてください)。

于 2013-03-26T01:40:52.877 に答える
0

3.5 インチ画面で開発しますが、autoLayout を有効にします。ビュー内の各項目を調べて、自動サイズ調整を調整します。- アイテムを選択 - インターフェイス ビルダーでズームイン/ズームアウトして、白い矢印の場所に移動します。H のような小さなボタンをクリックします。 - これにより、各項目の調整を調整できます。

ここに画像の説明を入力

ここに画像の説明を入力

于 2013-03-26T00:23:47.733 に答える
0

この優れた自動レイアウト チュートリアルに従うことができます: http://www.raywenderlich.com/20881/beginning-auto-layout-part-1-of-2

于 2013-03-26T00:19:20.610 に答える