初めて、カメラで撮った写真やフォトギャラリーから選んだ写真を保存して読み込もうとしています。カメラで撮った写真を写真アルバムに保存し、そのURLを取得することができました。最後の部分が正しいことを願っています。対応するコードは次のとおりです。
- (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];
}
写真の URL は、コア データの NSData オブジェクトとして、他のデータと共に保存されます。
article.imageData = [NSData dataWithContentsOfURL:self.imageURL];
すべてが正しいと仮定して、保存した画像を UICollectionView に表示してみます。この時点で、画像の読み込みに失敗しました。次のコードは、アプリの初期の開発段階で動作し、全体像をコア データの NSData に保存し、アルバムには保存しませんでした。私が間違っていて、もっと良い方法がある場合は修正してください。しかし、私はこの方法が良いと思いました。したがって、cellForIteamAtIndexPath UICollectionView のコードは次のとおりです。
cell.image.image = [UIImage imageWithData:[[_allArticles objectAtIndex:indexPath.row] imageData]];
このコードを使用すると、フォト アルバムの使用時に画像がまったく表示されません。誰かが私を助けてくれることを願っています。どうもありがとう!