我試圖截取顯示在iPhone顯示屏上的所有內容的屏幕截圖,與按住home + power按鈕的方式完全相同。我現在有截圖中的代碼是這樣的:截圖顯示所有內容
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並截屏。然而,使用這種方法,我可以獲得正確位置和大小的人臉跟蹤圖片的截圖,但不會顯示相機在下面看到的 - 只是白色。我能夠像這樣)使用CameraEngine框架在viewDidLoad中(相機:
override func viewDidLoad() {
super.viewDidLoad()
self.cameraEngine.startSession()
有沒有更好的辦法來截圖一切行爲像硬件引起的方法?或者我怎麼能包含相機在屏幕截圖中看到的內容?
謝謝!
更新:如果將來有人想知道我是如何解決這個問題的,因爲我無法截圖,所以我沒有畫出自己,我通過用相機拍攝照片並將該圖像設置爲視圖的背景,然後執行截圖功能,它的工作原理!
該答案中的代碼是我此刻正在執行屏幕截圖的過程,但屏幕截圖不包含相機所看到的內容。也許我需要在UIView中啓動相機會話? – Stickerbox