2

ユニバーサル アプリ、特に iPad mini の画像命名規則について質問があります。

iPhone 4s、iPad 3 (つまり、Retina 付きの iPad)、および iPad mini にまたがるユニバーサル アプリを開発しています。アプリの背景として読み込みたい画像があります。私は使っている

[UIImage imageNamed:@"background"] 

画像を取得します。これは、iPhone と iPad では機能しますが、iPad mini では機能しません。

デバッグするには、使用しました

NSString *filePath = [[NSBundle mainBundle] pathForResource:@"background" ofType:@"png"];
NSLog(@"background image: %@",filePath);

正しい画像が選択されていることを確認します。iPadで私は得る

background image: /var/mobile/Applications/[...RESOURCEPATH...]/background.png

そしてiPhoneで私は得る

background image: /var/mobile/Applications/[...RESOURCEPATH...]/background~iphone.png

しかし、iPad miniでは取得します

background image: (null)

本当に奇妙な部分は、名前付きのバージョンの画像を含めたことです。

background~iphone.png
background@2x~iphone
background-Portrait~ipad
background-Portrait@2x~ipad

しかし、それ自体では background.png ではありません。

この間違いに気づいたとき、background.png 画像を追加したところ、mini にも背景が表示されるようになりました。

ここで何が起こっているのか、これを行う正しい方法は何ですか?

4

1 に答える 1

1

-PortraitUpsideDownイメージ名に「修飾子」(「 」など) が表示される唯一の場所は、この Apple ドキュメントで説明されているように、起動イメージです (「さまざまな向きの起動イメージを提供する」セクションを参照してください)

背景画像は 2 つだけにする必要があります。1 つは通常の解像度用で、もう 1 つは Retina 解像度用です (つまり、" @2x" サフィックス)。これらの 2 つの画像は、適切に回転されることを処理できるはずです。

于 2013-05-10T23:09:44.540 に答える