0

質問があります。

インターフェイスを作成すると、画像の解像度が 2 つになります (網膜と非網膜)。「image.png」をポイントすると、「image@2x.png」に戻り​​ます(網膜ディスプレイの場合。網膜画像が存在する場合)。

しかし、ファイルをダウンロードして電話のディレクトリ(例:「NSLibraryDirectory」)に保存すると。

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES);
NSString *docDir = [paths objectAtIndex: 0];
NSString *docFile = [docDir stringByAppendingPathComponent:[NSString stringWithFormat:@"%@",self.imageName]];

完全なファイル パスを取得します (例: "library/image.png")

質問は、Xcodeで画像「library/image@2x.png」を見つけて、Retinaディスプレイに置き換えます。

または、最大解像度の画像のみを保存します。そして、それを使用してください。

4

1 に答える 1

2

答えは No! です。現在のデバイスが Retina かどうかを確認する必要があります。そうである場合は、「@2x」文字列をパスに手動で追加してください。@2x および通常のイメージは、xcode プロジェクトのビルド フェーズ中に tiff に変換され、実行可能ファイルはリソースを自動的に検索します (@2x または通常)。ただし、これらのイメージをデバイスのファイル パスに保持している場合は、@2x を手動で確認する必要があります。

于 2013-09-18T15:23:59.240 に答える