私の iOS リソース フォルダーには、次の画像があります。
foo~iphone.png
foo@2x~iphone.png
foo~ipad.png
foo@2x~ipad.png
私はそれらをロードします:
NSString *fileName = [[NSBundle mainBundle] pathForResource:@"foo" ofType:@"png"];
UIImage *image = [UIImage imageWithContentsOfFile:fileName];
実験的に:
iPhone ではfilename
、/path/to/bundle/foo~iphone.png
Retina iPhone では@2x
バージョンをロードします。
iPad ではfilename
、/path/to/bundle/foo~ipad.png
Retina iPad ではバージョンをロードします@2x
。
つまり、期待どおりのイメージをロードしますがpathForResource
、デバイス修飾子をimageWithContentsOfFile
処理し、スケール修飾子を処理します。
理由を知りたいです。のドキュメントはpathForResource
デバイス修飾子について何も述べておらず、 のドキュメントはimageWithContentsOfFile
スケール修飾子について何も述べていません。
各機能が何をするかを正確に示す個別のドキュメントはありますか?