ios实现条形码扫描功能
免费的条形码是zbar,其使用地址是:http://zbar.sourceforge.net/iphone/sdkdoc/install.html
下面是实现的效果:
![]()
利用条形码,可以简单的得到二维码的值.
具体的实现过程如下:
首先下载zbr的sdk。
然后,创建工程,iphone.scanbar。
第三,把下载的ZBarSDK添加到工程中。
第四,然后添加.framework到工程中。
![]()
-(void)buttonAction:(UIButton *)btn{ZBarReaderViewController *reader = [ZBarReaderViewController new];reader.readerDelegate = self;ZBarImageScanner *scanner = reader.scanner;[scanner setSymbology: ZBAR_I25config: ZBAR_CFG_ENABLEto: 0];[self presentModalViewController: reader animated: YES];[reader release];}- (void) imagePickerController: (UIImagePickerController*) reader didFinishPickingMediaWithInfo: (NSDictionary*) info{NSLog(@"info=%@",info);NSLog(@"info is a -------------->%@",info);// 得到条形码结果id results =[info objectForKey: ZBarReaderControllerResults];ZBarSymbol *symbol = nil;for(symbol in results)// EXAMPLE: just grab the first barcodebreak;// 将获得到条形码显示到我们的界面上NSString *str = symbol.data;// 扫描时的图片显示到我们的界面上NSLog(@"str is a -------------->%@",str);if([str hasPrefix:@"http"]){NSURL *url = [NSURL URLWithString:str];[[UIApplication sharedApplication] openURL:url];}else if([str hasPrefix:@"localhost:"]){NSString * categoryId = [str substringFromIndex:9];NSDictionary *dic = [NSDictionary dictionaryWithObject:categoryId forKey:@"categoryId"];[[NSNotificationCenter defaultCenter] postNotificationName:@"goIntoMgzViewNotification" object:self userInfo:dic];}else{UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"" message:@"二维码错误,请更换二维码后重试" delegate:self cancelButtonTitle:@"我知道了" otherButtonTitles:nil, nil] ;[alert show];[alert release];alert = nil;}// resultImage.image =[info objectForKey: UIImagePickerControllerOriginalImage];// 扫描界面退出[reader dismissModalViewControllerAnimated: YES];}
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
