您好我是iOS目标c的新手。 我正在开发一个应用程序,它可以获取图像并将其存储在应用程序内存中以供参考。
因为ALAasset
已被弃用,有人可以解释什么是存储图像的最佳方式。
是使用文件还是PHImagemanager
。
以及如何?
答案 0 :(得分:0)
您应该将图像存储在文档目录中,例如
NSString *docsDir = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)objectAtIndex:0];
NSString *documentsDirectoryForSaveImages = [docsDir stringByAppendingPathComponent:@"/ProfileImages"];
[[NSFileManager defaultManager] createDirectoryAtPath:documentsDirectoryForSaveImages withIntermediateDirectories:YES attributes:nil error:nil]; // This creates folder in document directory of name "ProfileImages"
现在你可以存储类似的图像,
NSData *data = UIImageJPEGRepresentation(responseObject, 1.0); //Convert image to data
[data writeToFile:[documentsDirectoryForSaveImages stringByAppendingPathComponent:formImage] atomically:NO]; //write that data to path. formImage is string value (name of image. Ideally should use timestamp to make unique naming)
您可以检索图像,
UIImage *img = [UIImage imageWithContentsOfFile:[documentsDirectoryForSaveImages stringByAppendingPathComponent:formImage]];
希望这会有所帮助:)