0

メインの 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 クラスと組み合わせてのみ使用できるのかはわかりません。ご協力いただきありがとうございます。

4

2 に答える 2

0

後世にとって、保存される画像がゼロだったという問題がありました。

于 2012-08-25T13:16:31.957 に答える
-1

次のように画像を保存してみてください。

UIImageWriteToSavedPhotosAlbum(screenshot, nil, nil, nil);

または多分

UIImageWriteToSavedPhotosAlbum(self.screenshot, nil, nil, nil);

または多分

UIImageWriteToSavedPhotosAlbum(screenshot, self, nil, nil);
于 2012-08-25T01:07:01.853 に答える