gpt4 book ai didi

ios - 如何检查扫描的二维码是否包含除数字之外的任何内容

转载 作者:行者123 更新时间:2023-11-30 11:45:22 25 4
gpt4 key购买 nike

对于我的项目,我使用的是 QRCodescanner,如果代码仅包含数字,它应该只响应 qrcode。因此,每当代码包含除数字之外的任何内容时,它都应该发出错误警报。

现在,每次我扫描不只包含整数的代码时,应用程序都会崩溃。

这是迄今为止我处理输出的方式:

 func metadataOutput(_ output: AVCaptureMetadataOutput, didOutput metadataObjects: [AVMetadataObject], from connection: AVCaptureConnection){


if metadataObjects.count != 0 {

if let object = metadataObjects[0] as? AVMetadataMachineReadableCodeObject{

if object.type == AVMetadataObject.ObjectType.qr{
self.session.stopRunning()

ergebnis = Int(object.stringValue!)!

barnummer = ergebnis/1000*1000

qrbar = [QRBereich]()
qrbarname = ""

fetchData()
}
}
}
}

在将对象 Value 转换为 Int 变量之前,我想检查它是否真的只包含数字,但我不知道如何检查它。

最佳答案

您需要安全地解开选项。您的应用程序崩溃是因为您误用了 ! 运算符。

if object.type == AVMetadataObject.ObjectType.qr{
self.session.stopRunning()

if let string = object.stringValue {
if let ergebnis = Int(string) {
barnummer = ergebnis/1000*1000

qrbar = [QRBereich]()
qrbarname = ""

fetchData()
} else {
// Not an integer, show error
}
}
}

关于ios - 如何检查扫描的二维码是否包含除数字之外的任何内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48891645/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com