Ios AVCaptureVideoPreviewLayer更改为AspectFill

Ios AVCaptureVideoPreviewLayer更改为AspectFill,ios,objective-c,avplayer,gravity,bounds,Ios,Objective C,Avplayer,Gravity,Bounds,我希望我的会话以aspectFill方式显示在我的AVCamPreviewLayer中。虽然下面的代码就是这样做的,但它填充了整个屏幕,而不仅仅是预览层连接到故事板上的视图。因此,在更改重力时,我想以某种方式将AVCaptureVideoPreviewLayer填充到我的previewView的边界,而不是全屏 [(AVCaptureVideoPreviewLayer *)[[self previewView] layer] setVideoGravity:AVLayerVideoGravi

我希望我的
会话
以aspectFill方式显示在我的
AVCamPreviewLayer
中。虽然下面的代码就是这样做的,但它填充了整个屏幕,而不仅仅是预览层连接到故事板上的视图。因此,在更改
重力时,我想以某种方式将
AVCaptureVideoPreviewLayer
填充到我的
previewView
的边界,而不是全屏

  [(AVCaptureVideoPreviewLayer *)[[self previewView] layer] setVideoGravity:AVLayerVideoGravityResizeAspectFill];
我也试过了

- (void)setSession:(AVCaptureSession *)session
{
    ((AVPlayerLayer *)[self layer]).videoGravity = AVLayerVideoGravityResizeAspectFill;
    ((AVPlayerLayer *)[self layer]).bounds = ((AVPlayerLayer *)[self layer]).bounds;
    [(AVCaptureVideoPreviewLayer *)[self layer] setSession:session];
}
**请注意,这确实来自