Ios 屏幕截图显示的所有内容
我试图截取iPhone显示屏上显示的所有内容的屏幕截图,就像同时按下home和power按钮一样。我目前必须截图的代码如下:Ios 屏幕截图显示的所有内容,ios,swift,Ios,Swift,我试图截取iPhone显示屏上显示的所有内容的屏幕截图,就像同时按下home和power按钮一样。我目前必须截图的代码如下: func screenShotMethod() { //hide UI buttonTrigger.hidden = true //take screenshot let layer = UIApplication.sharedApplication().keyWindow!.layer let scale = UIScreen
func screenShotMethod() {
//hide UI
buttonTrigger.hidden = true
//take screenshot
let layer = UIApplication.sharedApplication().keyWindow!.layer
let scale = UIScreen.mainScreen().scale
UIGraphicsBeginImageContextWithOptions(view.frame.size, false, scale);
layer.renderInContext(UIGraphicsGetCurrentContext()!)
let screenshot = UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext()
UIImageWriteToSavedPhotosAlbum(screenshot, nil, nil, nil)
//show UI
buttonTrigger.hidden = false
}
关键是我正在使用相机,并将图片覆盖在它检测到的任何人脸上,而将其保存到相机卷的最简单方法就是隐藏UI和屏幕截图。然而,通过这种方法,我得到了一张面部跟踪图片的截图,在正确的位置和大小,但不是相机在下面看到的——只是白色。我使用viewDidLoad()中的CameraEngine框架启用相机,如下所示:
override func viewDidLoad() {
super.viewDidLoad()
self.cameraEngine.startSession()
有没有更好的方法来截屏一切,使其表现得像硬件诱导的方法?或者我怎样才能在截图中包含相机看到的内容
谢谢大家!
更新:如果将来有人想知道我是如何解决这个问题的,因为我无法截屏我自己没有画的东西,我解决了这个问题,用相机拍了一张照片,并将该图像设置为视图的背景,然后执行截屏功能,它就工作了 从iOS 9开始,不再可能拍摄包含程序未绘制的屏幕元素的屏幕截图。您只能捕获应用程序的视图和层。苹果不会将power+home触发的功能公开给第三方开发者。从iOS 9开始,不再可能拍摄包含程序未绘制的屏幕元素的屏幕截图。您只能捕获应用程序的视图和层。苹果没有向第三方开发者公开power+home触发的功能。该答案中的代码是我目前执行屏幕截图的方式,但屏幕截图不包括相机看到的内容。也许我需要在UIView中启动摄像头会话?答案中的代码是我目前执行屏幕截图的方式,但屏幕截图不包括摄像头看到的内容。也许我需要在UIView中启动相机会话?谢谢您的回复!谢谢你的回复!