サイズ320x156のabc.pngという名前の画像がiPhone4でうまく動作し、サイズ640x312のabc@2x.pngという名前の画像も正常に動作します。しかし、iPhone6デバイスで画像を使用する方法を教えてください。
2 に答える
まず第一に、今のところ iPhone6 のようなものはなく、iOS6 か iPhone 5 のいずれかです。iPhone 5 の画像を選択する組み込みの方法はありません。
resources に abc.png と abc@2x.png があり、次のようなコードを使用する場合:
UIImage * image = [UIImage imageNamed:@"abc.png"];
非 Retina ディスプレイの場合は abc.png を選択し、Retina ディスプレイ (iPhone 4S および iPhone 5 を含む) の場合は abc@2x.png を選択します。
iPhone 5 用に別の画像をロードする場合は、画面の高さを確認する必要があります。
if(screenHeight == 480)
{
//iphone 3,3G,4
}
else if(screenHeight == 960)
{
//iphone 4S
}
else if(screenHeight == 1136)
{
//iphone 5
}
このようにして、iPhone ごとに異なる画像をロードできます。あなたの質問に答える場合は、回答を更新して確認してください。
あなたの質問への答えは、恐縮ですが、 と呼ばれるものAutoLayout
です。これが、iOS 6 ビューのさまざまなフォーム ファクターに対処するために Apple が思いついたソリューションです。@2x
利用できるのは画像だけですが、 を使用するとAutoLayout
、どのように動作するかを正確に伝えることができます。
の使用方法に関する素晴らしいチュートリアルを次に示しますAutoLayout
。試してみたところ、うまく機能します。
http://www.raywenderlich.com/20881/beginning-auto-layout-part-1-of-2
http://www.raywenderlich.com/20897/beginning-auto-layout-part-2-of-2