メインの ViewController で、から画像を生成しUIGraphicsGetImageFromCurrentImageContext()
ます。画像はUIImageに割り当てられており、メインビューのUIImageViewに配置してテストしたので、見ることができます。うまく動作します。ただし、保存するために割り当てたボタンをタップすると、次のエラーが表示されます。-3304 "Failed to encode image for saved photos."
スクリーンショットのコード:
CGSize mySize = CGSizeMake(530, 350);
UIGraphicsBeginImageContext(mySize);
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextTranslateCTM(context, -444, -313);
[self.view.layer renderInContext:UIGraphicsGetCurrentContext()];
// self.screenshot is a UIImage declared in .h
self.screenshot = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
コードを保存:
UIImageWriteToSavedPhotosAlbum(screenshot, self, @selector(imageWasSavedSuccessfully:didSaveWithError:contextInfo:), NULL);
カメラ ロール イメージの要件を満たしていないのか、それともそのメソッドを UIPickerController クラスと組み合わせてのみ使用できるのかはわかりません。ご協力いただきありがとうございます。