加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

iPhone zXing QR扫描仪 – didscanresult功能永远不会激发

发布时间:2020-12-14 20:00:24 所属栏目:百科 来源:网络整理
导读:我已将zXing项目加载到我自己的项目中. 它加载正常,按钮调用后弹出zXing扫描仪. 我可以关闭zxingControllerDidCancel上的视图控制器但是当我扫描QR码时,没有识别出任何代码,因此didScanResult函数永远不会触发. 有没有人对这个有任何想法? didScanResult函
我已将zXing项目加载到我自己的项目中.
它加载正常,按钮调用后弹出zXing扫描仪.

我可以关闭zxingControllerDidCancel上的视图控制器但是当我扫描QR码时,没有识别出任何代码,因此didScanResult函数永远不会触发.

有没有人对这个有任何想法?

didScanResult函数如下.

-(void)zxingController:(ZXingWidgetController *)controller didScanResult:(NSString *)result{
resultLabel.text = result;
NSLog(@"did scan!!!");
[self dismissModalViewControllerAnimated:NO];

}

注意:我不确定这是否相关,但是当扫描仪出现时,我会通过应用程序记录:“wait_fences:无法收到回复:10004003”

解决方法

该教程没有提到您必须将QRCodeReader添加到ZXingWidgetController的读者集中.

ZXingWidgetController有一个名为readers的属性,它是一个包含读者实例的NSSet(例如QRCodeReader的一个实例).粗略地说,读者的任务是分析相机拍摄的图像并提取编码信息.你的ZXingWidgetController必须知道它应该使用的读者,否则它没有机会做任何有意义的事情.因此,您必须在呈现ZXingWidget之前设置readers属性.

ZXing项目有一个示例应用程序来演示这一点.如果你使用ARC,那么

ZXingWidgetController *widController = [[ZXingWidgetController alloc] initWithDelegate:self showCancel:YES OneDMode:NO];
QRCodeReader* qRCodeReader = [[QRCodeReader alloc] init];
NSSet *readers = [[NSSet alloc] initWithObjects:qRCodeReader,nil];
widController.readers = readers;
[self presentModalViewController:widController animated:YES];

应该做.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读