我是Xcode(7.2)和Swift的新手。
我有一个程序员创建一个应用程序作为我想要的例子。他目前无法使用,我自己找不到答案。
我想扫描多种条形码类型,我需要帮助将其集成到我的代码中。
这是代码。我可以交换类型,它工作正常,但我想一次支持所有类型。
let metadataOutput = AVCaptureMetadataOutput()
if(session.canAddOutput(metadataOutput)){
session.addOutput(metadataOutput)
metadataOutput.setMetadataObjectsDelegate(self, queue: dispatch_get_main_queue())
metadataOutput.metadataObjectTypes = [AVMetadataObjectTypeEAN8Code]
//[AVMetadataObjectTypeUPCECode]
//[AVMetadataObjectTypeEAN13Code]
}else{
scanningNotPossible()
}
我认为我需要重新定义一些东西,但请帮忙,因为我无法弄明白。
答案 0 :(得分:0)
这将扫描上述代码段中提到的三种类型:
metadataOutput.metadataObjectTypes = [AVMetadataObjectTypeEAN8Code, AVMetadataObjectTypeUPCECode, AVMetadataObjectTypeEAN13Code]
如果您命令单击其中一个符号,例如AVMetadataObjectTypeEAN8Code
,您将找到可以添加到上述阵列的其他元数据对象类型。
答案 1 :(得分:0)
但是有点慢
let metadata = AVCaptureMetadataOutput()
metadata.metadataObjectTypes = metadata.availableMetadataObjectTypes