2015-12-04 82 views
1

enter image description hereAVPreviewLayer contentsGravity不灌裝

我使用AVFoundation做一些錄像,我已經到處尋找如何讓視頻方面填充。我已經通過Apple和AVCaptureVideoPreviewLayer的類參考閱讀了avfoundation指南。我也在這裏閱讀這個問題AVFoundation camera preview layer not working。這裏是我的代碼

 videoPreviewLayer.frame = captureView.frame 
     videoPreviewLayer.frame.origin = CGPoint(x: 0, y: 0) 
     videoPreviewLayer.backgroundColor = UIColor.redColor().CGColor 
     videoPreviewLayer.contentsGravity = AVLayerVideoGravityResizeAspectFill 
     videoPreviewLayer.masksToBounds = true 
     captureView.layer.addSublayer(videoPreviewLayer) 

我把這個viewDidLayoutSubviews(),這樣我可以得到captureView.frame的正確尺寸是UIView我previewLayer是內部的。任何線索爲什麼aspectFill不工作?正如您從紅色背景中可以看到的那樣,圖層是正確的大小,但contentGravity不會填充圖層。

回答

3

在此鏈接中找到我的答案AVCaptureVideoPreviewLayer。我需要使用videoPreviewLayer.videoGravity = AVLayerVideoGravityResizeAspectFill而不是videoPreviewLayer.contentsGravity = AVLayerVideoGravityResizeAspectFill