我有一个AVCaptureVideoPreviewLayer,我想将其填充到UIView的边界。不过,它似乎无法正常工作。它仅显示在屏幕的3/4左右。

CGRect bounds=self.previewView.layer.bounds;
self.previewLayer.videoGravity = AVLayerVideoGravityResizeAspectFill;
self.previewLayer.bounds = bounds;
self.previewLayer.position=CGPointMake(CGRectGetMidX(bounds), CGRectGetMidY(bounds));
[self.previewView.layer addSublayer:self.previewLayer];

图片:http://cl.ly/image/1Y441f3B2d1m

最佳答案

添加了预览层后,可能会在某个时候调整容器视图的大小,并且由于CALayer没有自动调整蒙版或自动布局的大小,因此它不会更新其框架,因此您需要手动进行操作

10-05 17:44