0

私はiOS5とiPhone5より前のバージョンと互換性のあるアプリを作成しました。つまり、その背景とスプライトの配置は、iPhone3.5Retinaで想定されている方法です。iPhone 4 "Retinaでアプリを実行しようとすると、アプリの上下に黒いパディングが表示されます。画面のサイズに応じて、さまざまな背景とスプライトの位置を条件付きで表示するスマートな方法を見つけようとしていました。Iこれらの2つの方法を試しましたが、期待する値が返されません。

NSLog(@"Win Height: %f", winSize.height);
NSLog(@"Win Width: %f", winSize.width);
NSLog(@"Main Screen Height: %f", [UIScreen mainScreen].bounds.size.height);
NSLog(@"Main Screen Width: %f", [UIScreen mainScreen].bounds.size.width);


2012-10-02 21:36:47.317 Win Height: 480.000000
2012-10-02 21:36:47.318 Win Width: 320.000000
2012-10-02 21:36:47.319 Main Screen Height: 480.000000
2012-10-02 21:36:47.319 Main Screen Width: 320.000000

デバイスのサイズを考慮して、スプライトを条件付きで配置する方法を知っている人はいますか?

4

1 に答える 1

1

レターボックスを無効にするために、Default-568h@2x.pngスプラッシュ画像を含めましたか?

それが行われると、あなたはこのようなことをすることができます、

#define DEVICE_IS_IPHONE5 ([[UIScreen mainScreen] bounds].size.height == 568)

if(DEVICE_IS_IPHONE5)
{
     //Do something different
}
else
{
}

編集:@2xを忘れた

于 2012-10-03T04:54:07.653 に答える