2016-03-21 15 views
0

iPhoneのすべての画面をサポートする解像度アプリを開発中です。私はスケーリングではないので、すべての画面サイズに対応しなければなりません。 iPhone 6プラス肖像ため肖像と(2X @)iPhone 6持っている750 X 1334のためのx 2208 1242(3X @)を持っています。iOS- iPhone 6と6の画像リソース

通常、全幅画像グラフィックを320 @ 1x、640 @ 2x、960 @ 3xで作成します。しかし、今はそれが効かない。私は完全にしなければならない幅のは解像度ごとに別々のサイズの画像ですか?

私はのためにiPhone 6 iPhone 6プラスための3倍@を2倍@iPhone 5Sのための2倍@ 640またはそれ以前と750を作成し同様。

イメージの解像度ごとに作成する必要がありますか?私は右の方向に行くか、より良いの解決策がありますか?

答えて

1

iPhone 6とiPhone 5は同じ@2xイメージを使用しますが、両方のデバイスで解像度が異なるので、両方のイメージを取得することをお勧めします。

iPhone 6では、iPhone 5の画像が読み込まれると、歪みが表示されます。

一方、iPhone 6用の画像が750 x 1334(@ 2x)の場合、そのiPhone 5または4をロードすると、より高解像度の画像がスクイズされます。

しかし、問題は、iPhone_5 @ 2xとiPhone_6 @ 2xの両方を置くと、Xcodeはどのイメージをどのデバイスに読み込むのかということではないということです。ですから、私は実行時に画像を区別する機能を作っています。

//MARK: Load Images for particular device 
func getDeviceSpecificImage(imgName: String) -> String{ 

var imageName: String? 

    switch UIScreen.mainScreen().bounds.width{ 

     case 320: 
      imageName = String(format: "%@[email protected]", imgName) 

     case 375: 
      imageName = String(format: "%@[email protected]", imgName) 

     case 414: 
      imageName = String(format: "%@[email protected]", imgName) 

     default: 
      break 
    } 

    return imageName! 
} 

関連する問題