我的 swift 项目中有以下代码
if let availabeDevices = AVCaptureDevice.DiscoverySession(deviceTypes: [.builtInMicrophone,
.builtInWideAngleCamera], mediaType: AVMediaType.video, position: .back).devices {
captureDevice = availabeDevices.first
}
当我运行此代码时,它在 if 行上给出一个错误,内容如下:
Initializer for conditional binding must have Optional type, not '[AVCaptureDevice]'
我尝试在 .devices
之后添加 ?
,但出现以下错误:
Cannot use optional chaining on non-optional value of type '[AVCaptureDevice]'
我该怎么办?
最佳答案
使用下面的行。
if let captureDevice = AVCaptureDevice.DiscoverySession(deviceTypes: [.builtInMicrophone, .builtInWideAngleCamera],
mediaType: AVMediaType.video,
position: .back).devices.first {
self.captureDevice = captureDevice
}
关于用于条件绑定(bind)的 Swift 初始化程序必须具有可选类型,而不是 '[AVCaptureDevice]',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55966420/