iPhone保存多个视图截图

时间:2010-07-12 10:36:57

标签: iphone uiimage uiimagepickercontroller

我有一个UIImagePickerController,我添加了一些包含图像的子视图。我需要将整个内容保存为图像,但不能这样做。

要保存上下文的内容,请使用以下代码

UIGraphicsBeginImageContext(self.view.frame.size);
[self.view.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();

它适用于UIImagePickerController,但如果我添加子视图,它会停在

[self.view.layer renderInContext:UIGraphicsGetCurrentContext()];

行,在控制台中没有任何错误,只需退出应用程序。

谢谢!

1 个答案:

答案 0 :(得分:0)

如果你试图在屏幕截图中抓住屏幕上的所有内容,我发现堆栈溢出:

UIWindow *screenWindow = [[UIApplication sharedApplication] keyWindow];

UIGraphicsBeginImageContext(screenWindow.frame.size);
[screenWindow.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *screenshot = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();

它将抓住窗口上的所有内容。

希望这有帮助。