1

我目前能够拍摄照片或从相机加载并将图像放置在我的应用程序的 UIImageView 中,因为我希望能够有一个按钮来保存图像,所以当我重新加载应用程序时,图像仍然在图像视图。

我虽然是一个按钮,一旦你加载它并在

-(void)viewDidLoad

有代码来加载已保存的图像,但我不知道如何处理。

任何帮助都会很棒。

4

1 回答 1

4

您可以将图像转换为NSData使用UIImagePNGRepresentationUIImageJPGRepresentation,然后将数据保存到调用其中一个方法的文件NSDatawriteToFile...

然后当您重新启动应用程序时,您可以通过调用获取图像[UIImage imageWithData:[NSData dataWithContentsOfFile:filePath]]

- 编辑 -

保存图片

UIImage *image = ...;
NSString *cachedFolderPath = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES)[0];
NSString *cachedImagePath = [cachedFolderPath stringByAppendingPathComponent:@"image.png"];
[UIImagePNGRepresentation(image) writeToFile:cachedImagePath atomically:YES];

加载图像

NSString *cachedFolderPath = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES)[0];
NSString *cachedImagePath = [cachedFolderPath stringByAppendingPathComponent:@"image.png"];
UIImage *image = [UIImage imageWithData:[NSData dataWithContentsOfFile:cachedImagePath]];

我使用它NSCachesDirectory是因为我假设您不想备份此图像(通过 iCloud 或 iTunes)。如果你这样做了,那么你会想要使用它NSDocumentDirectory

于 2013-10-07T15:28:39.227 回答