本文实例为大家分享了iOS第三方二维码生成与扫描的具体代码,供大家参考,具体内容如下
导入第三方框架libqrencode(生成二维码)和ZBarSDK(二维码扫描)
导入头文件
1
2
|
#import "QRCodeGenerator.h" #import "ZBarSDK.h" |
创建两个按钮点击事件
点击按钮一实现生成二维码
1
2
3
4
5
6
7
8
|
- (IBAction)erWeiMaBtn1:(id)sender { // 设置图片框存放二维码 UIImageView *imgView = [[UIImageView alloc]initWithFrame:CGRectMake((self.view.frame.size.width - 200)/2, 100, 200, 200)]; // 展示到主视图 [self.view addSubview:self.imgView]; // 利用第三方方法实现自己想要的二维码 imgView.image = [QRCodeGenerator qrImageForString:@ "傻子" imageSize:self.imgView.frame.size.width]; } |
点击按钮二实现扫描二维码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
- (IBAction)erWeiMaBtn1:(id)sender { //设置文本域(设置为全局) _textView = [[UITextView alloc]initWithFrame:CGRectMake((self.view.frame.size.width-300)/2, 430, 300, 300) textContainer:nil]; //设置背景颜色 _textView.backgroundColor = [UIColor blueColor]; //添加到主视图 [self.view addSubview:self.textView]; ZBarReaderViewController *reader = [[ZBarReaderViewController alloc] init]; reader.readerDelegate =self; //隐藏底部控制按钮 reader.showsZBarControls =YES; //设置自己定义的界面 //reader.cameraOverlayView = someView;(这个视图可以自己定义,当然你也可以通过[reader.view addSubview:someView]的方式添加蒙版视图,这样可以做出自己想要的视图效果) //设置识别范围(这里的4个参数都是视图比例~~不要搞错奥(距离左边的比例,距离上边的比例,识别宽度的比例,识别高度的比例)) //reader.scanCrop =CGRectMake(0,0, 1,1); //设置识别的参数 ZBarImageScanner *scanner = reader.scanner; [scanner setSymbology:ZBAR_I25 //这个参数和to:后面的参数配合确定了识别的编码范围,根据需求调整,可以提高识别速度。 config:ZBAR_CFG_ENABLE to:0]; [self presentViewController:reader animated:YES completion:nil]; } //下面是委托方法 - ( void ) imagePickerController: (UIImagePickerController*) reader didFinishPickingMediaWithInfo: (NSDictionary*) info { id<NSFastEnumeration> results = [info objectForKey: ZBarReaderControllerResults]; ZBarSymbol *symbol =nil; for (symbol in results) break ; NSLog(@ "%@" ,symbol.data); //打印识别的数据 //设置内容 _textView.text = symbol.data; // [reader dismissModalViewControllerAnimated:YES]; } |
注意:在info.plist中填入可用相机扫描的白名单!
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/ZzWei_01/article/details/80780633?utm_source=blogxgwz0