6

どこかで尋ねられたと確信しているので、これに対する答えを見つけるためにできる限りの組み合わせを検索しました....正しい方向に私を向けることができれば許してください。

新しい iOS アプリを開発している場合、最初に iPhone 5 または 4 の画面サイズに合わせて IB でレイアウトをセットアップしますか? autolayout を使用して iPhone 4 アプリを iPhone 5 に移動する方法に関する記事をたくさん見つけましたが、その逆はありません....これは、完全に別のインターフェースを持たないアプリに望ましいワークフローを考えさせます。 2 つは、IB で 3.5 インチの画面サイズのインターフェイスを作成し、オートレイアウトを使用して iPhone 5 の 4 インチの画面に適応させることです。

誰かが私のためにベストプラクティスを明確にすることができますか?

4

2 に答える 2

6

Kendall Gelnは、非常に良い点をいくつか挙げています。特に、小さい画面から構築してサイズを変更する方が良いということです。主な理由は、要素を縮小すると、ユーザーに不快で窮屈なエクスペリエンスを提供する可能性があるためです。その点については、グラフィック (画像とビデオ) が両方の画面サイズに対して適切なサイズであることを確認する必要があります。グラフィックを作成するときは、最初に大きな縮尺で作成してから、必要に応じてサイズを小さくするのが最適な場合があります。

もう 1 つの設計上の考慮事項は、4 インチと 3.5 インチの画面にわずかに異なるインターフェイスを作成することです。4 インチの画面は背が高く、開発者により多くのスペースを提供するため、可能性が広がります。これは、iPad や iPhone のインターフェイスを設計する場合とほぼ同じ原理です。

また、Interface Builderでこれを行うことについても言及しています。デフォルトでは (Xcode 4.6 以降)、新しい iPhone ベースのプロジェクトはすべて、4 インチ / iPhone 5 レイアウトでインターフェイスを開始します。Interface Builder / Editor 画面の右下隅にある画面サイズ切り替えボタン (両端に矢印の付いた長方形のように見えます) をクリックすると、いつでもレイアウトを切り替えることができます。

Xcode IB での画面サイズの切り替え

異なる画面サイズに対して完全に異なるインターフェイスが必要な場合は、AppDelegate で条件付きでストーリーボードを読み込むことができます。これを行う方法は次のとおりです。

if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) {
    // Check if the user is on a newer iPhone / iPod with a 4-inch screen
    if ([[UIScreen mainScreen] bounds].size.height == 568) {
        // The user is on a newer device with a 4-inch screen - load your custom iPhone 5 storyboard
        UIStoryBoard *storyBoard = [UIStoryboard storyboardWithName:@"MainStoryboard_iPhone5" bundle:nil];
        UIViewController *initViewController = [storyBoard instantiateInitialViewController];
        [self.window setRootViewController:initViewController];
    } else {
        // The user is on an older device with a 3.5-inch screen - load the regular storyboard
        UIStoryBoard *storyBoard = [UIStoryboard storyboardWithName:@"MainStoryboard_iPhone" bundle:nil];
        UIViewController *initViewController = [storyBoard instantiateInitialViewController];
        [self.window setRootViewController:initViewController];
    }
}

要約すると、正しいワークフロー (例: 3.5 から 4、またはその逆) はないと思いますが、次の点に注意してください。

  • 大きなインターフェイスを縮小すると、窮屈になり、ユーザー エクスペリエンスが低下する可能性があります
  • グラフィックスについても同じことは言えません...低解像度または小さなサイズでグラフィックスを設計し、拡大すると、見栄えがよくありません(Retinaおよび非Retinaデバイスの設計時に適用される同じ原則)。
  • さまざまな画面サイズと、それぞれで何ができるかを検討してください。個別のストーリーボードを作成できることに注意してください。

編集: 2013 年の初めから、Apple は iPhone 5 をサポートしていないアプリを AppStore に掲載することを許可しません。ストアにアプリやアップデートを取得するには、iPhone 5 の画面サイズをサポートする必要があります。

于 2013-04-09T22:55:31.093 に答える