Sen*_*ful 1 constants objective-c avfoundation
当使用 AVFoundation 检测图像中的特征(例如人脸或条形码)时,您必须调用如下一行:
AVCaptureMetadataOutput *metadataOutput = ...;
metadataOutput.metadataObjectTypes = metadataOutput.availableMetadataObjectTypes;
Run Code Online (Sandbox Code Playgroud)
检查 availableMetadataObjectTypes 显示以下字符串:
face,
"org.gs1.UPC-E",
"org.iso.Code39",
"org.iso.Code39Mod43",
"org.gs1.EAN-13",
"org.gs1.EAN-8",
"com.intermec.Code93",
"org.iso.Code128",
"org.iso.PDF417",
"org.iso.QRCode",
"org.iso.Aztec"
Run Code Online (Sandbox Code Playgroud)
如果我正在编写条形码扫描应用程序,我不希望框架寻找人脸,所以metadataOutput.availableMetadataObjectTypes我不想传递,而是传递特定的条形码来寻找。而不是使用这些硬编码的字符串,我希望它们在某处被定义为常量。
它们是否存在于框架中的任何地方,还是必须使用硬编码字符串?
有各种条形码类型的常量,就在AVMetadataMachineReadableCodeObject类中(完整列表在这里)。
所以你可以做这样的事情:
metadataOutput.metadataObjectType = @[AVMetadataObjectTypeQRCode, AVMetadataObjectTypeEAN13Code];
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3288 次 |
| 最近记录: |