3

重複の可能性:
iOS6アプリ-iPhone5の画面サイズに対処する方法は?
iPhone4とiPhone5で同じxibは可能ですか?

私は自分のアプリケーションを作成してきましたが、この間ずっとiPhone5の画面サイズでした。私はiPhone4のことをすっかり忘れてしまいました、私も持っています、ばかげています...どうすればいいですか?iPhone 5用にコーディングしたので、コードは両方の画面サイズでどのように機能しますか?

これが私が抱えている問題のモックアップです。2番目の画像では、小さいデバイスの画面からスライダーが切り取られています

すべてのインターフェイス要素を備えた4インチの画面 インターフェイスがカットオフされた3.5インチ画面

4

2 に答える 2

1

私があなたに与えることができる最善のアドバイスは、あなたのXIBで自動サイズ設定/自動調整設定を試すことです。これは、デバイスごとに個別のビューを設定しないようにするための最善の策です。

与えた例では、次のようなXcodeの設定を使用できます。

ここに画像の説明を入力してください

スライダーの原点が画面の下部になるように調整します。すべてが正しく見えるまで、各UI要素の設定を試してみてください。

于 2012-11-09T20:36:31.423 に答える
0

何ができるかは、インターフェースをどのように定義したか、およびUIがどのように見えるかによって厳密に異なります。

Interface Builder / StoryboardでUIを作成した場合は、すべてのコントロールとビューのメトリック設定を確認してみてください。この点に関する2つの主要なヒント:

  1. 自動サイズ変更の動作を慎重に選択することで、改善が得られる可能性があります。一部の要素では、画面の端からの距離を固定する必要がある場合があります。その他の要素では、柔軟な幅と高さを設定する必要がある場合があります。これは、UIに大きく依存します。

  2. 関連するUI要素の適切な配置を制御するための優れた手法は、それらをスーパービューにグループ化し、それらの要素の相対位置を保持することで、それらを移動または拡大縮小(柔軟な幅または高さを割り当てる)できるようにすることです。

インターフェイスをコードで定義した場合は、すべての位置とサイズを定義した方法を確認する必要があります。絶対値として設定する代わりに、画面サイズのパーセンテージとして再コード化することもできます。

私は自分のアプリで両方のテクニックを使用しており、iPhone4/5とiPhone/iPadの両方をサポートしています。いずれにせよ、これはいくつかの作業です。アプリのUIで何が悪くなっているのかによっては、多くの作業になる場合もあれば、一部の作業になる場合もあります。

これを自動的に修正する方法を探している場合は、メインビュー(たとえば、アプリデリゲート)にスケーリング変換を適用してみてください。

window.rootViewController.view.transform = CGAffineTransformMakeScale(1.0, 0.84);

これがうまくいくかどうかはわかりませんが、自動修正が不可能であるという事実を感じるには、これがより適切に役立つと思います。

于 2012-11-09T20:16:24.620 に答える