Ios AVCaptureVideoPreviewLayer在segue之后仍显示

Ios AVCaptureVideoPreviewLayer在segue之后仍显示,ios,avcapturesession,uistoryboardsegue,Ios,Avcapturesession,Uistoryboardsegue,我使用的是故事板,我的第一个视图中有一个AVCaptureVideoPreviewLayer,它显示了我相机输入的实时流。那很好。但是,当我尝试以模式切换到另一个视图时,AVCaptureVideoPreviewLayer视图仍显示在背景中。而不是设置新视图的黑色背景。我已尝试在以下内容中使用removeFromSuperLayer: - (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender 方法。然而,这不起作用

我使用的是故事板,我的第一个视图中有一个AVCaptureVideoPreviewLayer,它显示了我相机输入的实时流。那很好。但是,当我尝试以模式切换到另一个视图时,AVCaptureVideoPreviewLayer视图仍显示在背景中。而不是设置新视图的黑色背景。我已尝试在以下内容中使用removeFromSuperLayer:

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
方法。然而,这不起作用


有没有关于如何解决这个问题的建议?

首先,停止视频

[previewLayer.session stopRunning]
第二步,如果您不需要视频输出,请删除它

[previewLayer.session removeOutput:AVMediaTypeVideo]
如果这不起作用,请尝试调用

setNeedsDisplay

在超级层

你能发布一些代码吗?