AVCaptureVideoPreviewLayer框架在Swift中

时间:2014-07-12 20:32:14

标签: ios objective-c swift avfoundation

我正试图在Swift的屏幕上显示视频输出。但屏幕保持完全白色。我在ObjC中找到了本教程并且我遵循它(仅在Swift样式语法中)。

在那里有一行previewLayer.frame = myView.bounds;

但是字段.frame似乎只能在swift中读取。而且我认为这可能就是我在屏幕上看不到任何内容的原因。

如何在Swift中设置previewLayer的框架?

1 个答案:

答案 0 :(得分:7)

我在教程中看到三点,你可能最终没有显示预览,从而得到一个白色的屏幕。以下是Obj-C和Swift的同行。

1)您可能错过了将输入添加到捕获会话中的信息:

// [session addInput:input];
session.addInput(input)

2)您可能没有将预览图层的边界初始化为视图控制器的边界:

// UIView *myView = self.view;
// previewLayer.frame = myView.bounds;
previewLayer.frame = self.view.bounds

3)您可能没有将预览图层添加为视图的子图层:

// [self.view.layer addSublayer:previewLayer];
self.view.layer.addSublayer(previewLayer)