ギャラリーを作成したいのですが、私の問題は@ 2x画像をロードする方法ですか?
iOSはそれらを検索しようとしますか、それともパスを指定できますか?
画像の2つのバージョンを保存できます。1つは網膜用で、もう1つは非網膜用です。デバイスがWebサーバーから画像をダウンロードしようとしているとき(Webサービススクリプトを使用していると仮定)、次のような投稿データを取得できます。
NSString *postData;
if ([[UIScreen mainScreen] respondsToSelector:@selector(displayLinkWithTarget:selector:)] &&
([UIScreen mainScreen].scale == 2.0)) {
postData = @"retina_device";
} else {
postData = @"non_retina_device";
}
phpでwebservicesriptを作成すると仮定すると、デバイスが要求している画像のバージョンがわかります。
<?php
$postData = $_REQUEST['postData'];
if($postData == @"retina_device"){
//return all images for retina device
}
?>
サーバーから画像をロードするとき。
まず、imagesSizeをサーバーに送信するときに、リクエスト/Connectionをサーバーに送信します
例:-www.example.com/iPhone/abc.php?imagesSize = 1
どこ !@2xの場合
単純な場合は0(網膜以外の場合を意味します)
この方法を使用すると、でんぷんではなく画像が表示されます。
このif/elseブロックを使用する
if ([[UIScreen mainScreen] respondsToSelector:@selector(displayLinkWithTarget:selector:)] &&
([UIScreen mainScreen].scale == 2.0)) {
// Retina display
} else {
// non-Retina display
}
Retinaディスプレイを使用しているか、標準のディスプレイモデルを使用しているかを検出して、正しい画像を読み込むことができます。