0

アプリケーションをオフラインで使用します。したがって、ビューで使用するすべての画像をダウンロードする必要があります。

AFNetworking のキャッシュ メカニズムを使用しています。しかし、画像を表示している間は遅いです。

したがって、必要に応じてサーバーからファイルをダウンロードし、イメージビューのイメージをローカル パスから設定したいと考えています。

それを行うのは良い方法ですか?

4

2 に答える 2

1
NSData *data = [[NSData alloc] initWithContentsOfFile:[NSURL URLWithString:@"imageURL"]];
UIImage *img = [UIImage imageWithData:data];
imageView.image = img;

NSString *path = @"your path";
[UIImagePNGRepresentation(img) writeToFile:[path stringByAppendingPathComponent:[NSString stringWithFormat:@"%@.%@", {name}, @"png"]] options:NSAtomicWrite error:nil];

// when accessing it
UIImage *diskImage = [UIImage imageWithContentsOfFile:path];

または、これを使用できます: https://github.com/rs/SDWebImage -- オフラインで使用するためのキャッシュがあり、役立つ場合があります。また、プレースホルダー イメージ メソッドも含まれています。

于 2013-06-20T02:45:33.933 に答える