我第一次尝试保存并加载照片,由相机拍摄或从照片库中选择。我设法将相机拍摄的照片保存在相册中并获取它的网址。我希望最后一部分是正确的。这是相应的代码:
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
self.selectedImage = info[UIImagePickerControllerOriginalImage];
if (self.userCreatedPhoto == TRUE) {
UIImageWriteToSavedPhotosAlbum(info[UIImagePickerControllerOriginalImage],nil,nil,nil);
}
self.imageURL = [info objectForKey:@"UIImagePickerControllerReferenceURL"];
[self.imageView setImage:self.selectedImage];
[self dismissViewControllerAnimated:YES completion:nil];
}
照片网址与其他数据一起保存为核心数据中的NSData对象。
article.imageData = [NSData dataWithContentsOfURL:self.imageURL];
假设所有内容都正确,我尝试在UICollectionView中显示已保存的图片。此时我无法加载图片。以下代码在我的应用程序的早期开发阶段工作,我将整个图片保存到核心数据中的NSData而不是保存在相册中。如果我错了并且有更好的方法,请纠正我,但我认为这样会更好。所以这里是cellForIteamAtIndexPath UICollectionView:
中的代码cell.image.image = [UIImage imageWithData:[[_allArticles objectAtIndex:indexPath.row] imageData]];
使用此代码时,使用相册时根本不会出现图片。我希望有一个人可以帮助我。非常感谢!