我有一个UIImagePickerController,我添加了一些包含图像的子视图。我需要将整个内容保存为图像,但不能这样做。
要保存上下文的内容,请使用以下代码
UIGraphicsBeginImageContext(self.view.frame.size);
[self.view.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
它适用于UIImagePickerController,但如果我添加子视图,它会停在
[self.view.layer renderInContext:UIGraphicsGetCurrentContext()];
行,在控制台中没有任何错误,只需退出应用程序。
谢谢!
答案 0 :(得分:0)
如果你试图在屏幕截图中抓住屏幕上的所有内容,我发现堆栈溢出:
UIWindow *screenWindow = [[UIApplication sharedApplication] keyWindow];
UIGraphicsBeginImageContext(screenWindow.frame.size);
[screenWindow.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *screenshot = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
它将抓住窗口上的所有内容。
希望这有帮助。