私はユニバーサルアプリを開発しており、subtlepatterns.com で見つかった背景のいくつかを使用したかったのですが、それらをダウンロードすると、2 つの png ファイル (通常の png と 2x png) しか表示されません。iPhone と iPad (Retina ディスプレイを含む) の両方で使用するにはどうすればよいですか? すべての解像度をサポートするためにそれらをスケーリングする必要がありますか?
ありがとう。
私はユニバーサルアプリを開発しており、subtlepatterns.com で見つかった背景のいくつかを使用したかったのですが、それらをダウンロードすると、2 つの png ファイル (通常の png と 2x png) しか表示されません。iPhone と iPad (Retina ディスプレイを含む) の両方で使用するにはどうすればよいですか? すべての解像度をサポートするためにそれらをスケーリングする必要がありますか?
ありがとう。
ビューの背景色としてパターンを作成する必要があります。プロジェクトに両方のファイルを含めると、ビューのサイズは関係なく、Retina バージョンが自動的に選択されます。例えば:
UIImage *bgimg = [UIImage imageNamed:@"gray_jean"];
self.view.backgroundColor = [UIColor colorWithPatternImage:bgimg];
プロジェクトに 2 つのファイルがある場合:
gray_jean@2X.png
gray_jean.png
どんな状況でも機能するはずです。画像はビューの背景を埋めるためにタイル張りされ、Retina スクリーンには Retina バージョンが自動的に使用されます。ただし、これらのパターンの一部では、非 Retina バージョンが PNG ファイルであり、@2x Retina バージョンが JPEG ファイルであるため、注意してください。
パターンを並べて表示する必要があるため (通常のバージョンと @2x バージョンがあるため)、追加のスケーリングは必要ありません。と があると仮定するとpattern.png
、pattern@2x.png
画像を並べて表示する簡単な方法を次に示します。
UIColor *pattern = [UIColor colorWithPatternImage:[UIImage imageNamed:@"pattern"]];
[myViewController.view setBackgroundColor:pattern];
はい。iPhone と iPad には異なる画像を使用し、Retina ディスプレイには異なる画像を使用する必要があります。iPad または Retina ディスプレイに iPhone の画像を使用すると、ピクセル化されて表示されます。
そのため、各タイプに正確な解像度の画像を使用してください。
解決方法の詳細については、Apple のドキュメントを確認してください。