iOS开发技术 - 二维码扫描、生成

QRecLevel:QR_ECLEVEL_H // 二维码容错率,最高为30%(即QR_ECLEVEL_H),即LOGO有大                                                                                                               // 小不能超过二维码图片的30%,否则二维码无法被扫描出信息

logoName:@"logo.jpg"           //你的logo

logoSize:CGSizeMake(20, 30)  // logo的大小

completeBlock:^(UIImage *image) {

//

}];

B.二维码扫描:

// 使用下面代码即可跳到扫描界面,对准二维码可自动扫描

DimensionalCodeReaderViewController  *DCRV = [DimensionalCodeReaderViewController new];

DCRV.scanDelegate = self;

[self presentViewController:[[UINavigationController alloc] initWithRootViewController:DCRV] animated:YES completion:nil];

// 怎么获取二维码中的信息呢?

// 实现 DimensionalCodeReaderViewControllerDelegate中的 DimensionalCodeReaderWithContent:fromImage:方法即可。

- (void)DimensionalCodeReaderWithContent:(NSString *)myContent fromImage:(UIImage *)image

{

//myContent 为二维码信息

// image 为扫描到的二维码图片

NSLog(@"%@",myContent);

}

// 如果想要完全定制UI,则要子类化DimensionalCodeReaderViewController(新建一类,继承DimensionalCodeReaderViewController),在子类的- (void)viewDidLoad方法中定制。在附件的Demo就是使用子类化的方式。

到此,相信你已经学会了二维码的扫描与生成呢,是不是感觉so easy,很Happy,DimensionalCode.framework让二维码扫描和生成如此简单,提高效率更easy.

下面说一下使用DimensionalCode.framework需要注意的事项,使用Xcode4的developer可以飘过,主要是针对Xcode5,大家都知道iPhone5S的CPU是64位即(arm64),如果你的项目的Architectures(Target -> build Settings -> Architectures -> Architectures)包含了arm64,则无法使用DimensionalCode.framework(编译报错,原因:ZBarSDK不支持arm64);如果最新版ZBarSDK支持arm64,我会即时更新DimensionalCode.framework以支持arm64,方便大家使用!

如果你想使用DimensionalCode.framework,只要把你的项目的Architecturs(Target -> build Settings -> Architectures -> Architectures)更改为standard architecturs(armv7,armv7s),即可正常使用!

如果大家在使用过程中,有什么问题,可发email:yao189189@163.com

最后,DimensionalCode.framework包含了ZBarSDK和libqrencode ,非常感谢ZBarSDK和libqrencode的提供者!

Demo欢迎到http://download.csdn.net/detail/yao1500/6425119下载

上一篇:无法正确解析FreeMarker视图


下一篇:Ubuntu下Qt编译报错“cannot find -lGL”的解决方案