美文网首页知识分子iOS开发iOS Developer
二维码扫描/生成框架GLScanner使用详解 CocoaPo

二维码扫描/生成框架GLScanner使用详解 CocoaPo

作者: Gaivn | 来源:发表于2017-07-06 12:20 被阅读112次

GLScanner 最好用的iOS二维码、条形码,扫描、生成框架,支持闪光灯,从相册获取;个性化修改,错误处理回调。项目地址:GLScanner

1、一个方法初始化所有,Block回调,简单方便
2、支持个性化修改UI
3、支持多语言设置(英语、简体中文、繁体中文),或者自己设置所有语言
1、在使用的地方导入#import <GLScanner.h>, 调用二维码扫描视图:

Xcode8.0以上要求在使用相机或者相册等,项目info.plist要添加Privacy - Photo Library Usage DescriptionPrivacy - Camera Usage Description键值对,不然不给访问,不然不给访问,不然不给访问。千万别忘记了!!!!!!!!

GLScannerController *scanner = [GLScannerController scannerWithInitRootView:^(GLScannerViewController *rootScannerView) {
        #pragma mark UI初始化个性修改 
 
    } completion:^(NSString *value, BOOL *dismissAnimation) {
        #pragma mark 扫描成功处理

    } error:^(GLScannerViewController *rootScannerView, NSError *error) {
        #pragma mark 错误处理

}];
[self presentViewController:scanner animated:true completion:nil];
2、UI初始化个性修改参数详解:
//标题颜色
rootScannerView.titleColor = [UIColor whiteColor];

//设置bar背景图片或者颜色 二选一 优先图片
rootScannerView.barBackgroundImage = [UIImage imageNamed:@"bar_background"];
//rootScannerView.barBackgroundTintColor = [UIColor lightGrayColor];

//统一设置bar 和扫描工作的图片的颜色
rootScannerView.tintColor = [UIColor whiteColor];

//设置遮挡颜色
//rootScannerView.coverColor = [[UIColor redColor] colorWithAlphaComponent:0.4];

//自定义左侧item
rootScannerView.leftBarButtonItem = ^UIButton *(UIButton *leftButton) {
    //可以修改button的一些属性
    //自己创建一个返回也可以 可以自己实现触发方法
    return leftButton;
};

//自定义右侧item
rootScannerView.rightBarButtonItem = ^UIButton *(UIButton *rightButton) {
    //可以修改button的一些属性
    [rightButton setTitleColor:[UIColor redColor] forState:UIControlStateNormal];
    //优先这里设置
    [rightButton setTitle:@"Photo" forState:UIControlStateNormal];
    //自己创建一个返回也可以
    return rightButton;
};

//可以隐藏右侧ltem
rootScannerView.hiddenRightBarButtonItem = true;

//隐藏提示label
rootScannerView.hiddenTipLabel = true;

多语言设置:可以根据你个人应用需求设置语言,languageCode属性决定使用什么语言,值是一个静态变量,具体看GLScannerConfig.h文件,例:

rootScannerView.languageCode = GLScannerLocalizedStringZh_Hans;

语言默认跟随系统,也可以自己指定赋值,优先这里设置的语言,如:

//或者设置语言文本
rootScannerView.textStringDic[GLScannerBarTitle] = @"掃一掃";
rootScannerView.textStringDic[GLScannerBarRightTitle] = @"Photo";
rootScannerView.textStringDic[GLScannerDefaultTipContent] = @"将二维码放入框中,即可自动扫描";
3、完成回调:

回调参数 BOOL *dismissAnimation是设置扫描导航控制器消失是否动画,记住是一个指针。赋值方式:

*dismissAnimation = false;
4、错误处理

具体看文件GLScannerError.h的枚举GLSimpleScannerErrorCode内容,自己根据回调的错误的code做一些处理。

比如相机或相册拒绝授权,可以调用:

//跳转该应用的设置url
[GLQrScanner openSettingsURLString];
5、二维码生成和图片识别二维码

可以设置icon与二维码大小的比例,默认0.2

NSString *strng = @"https://github.com/Gavin-ldh";
UIImage *iconImage = [UIImage imageNamed:@"icon"];
CGFloat width = self.view.frame.size.width/5.0;
iconImage = [iconImage imageByResizeToSize:CGSizeMake(width, width) contentMode:UIViewContentModeScaleAspectFill];
[GLQrScanner qrImageWithString:strng icon:iconImage scale:0.15 completion:^(UIImage *image) {
        self.imageView.image = image;
    }];

识别图片二维码调用如下:

[GLQrScanner scaneImage:image completion:^(NSArray *values) {
       
    }];

如果页面UI跟我的界面差距很大,也可以根据GLQrScanner.h的头文件调用二维码识别方法。具体注释都很全面,可以下载看下。下载地址:GLScanner

6、安装使用

CocoaPods安装:pod 'GLScanner'

如果搜索不到,请先运行
rm ~/Library/Caches/CocoaPods/search_index.json
在搜索。

下载ZIP包,将GLScanner资源文件拖到工程中。

使用介绍就这些了,都是很简单的,希望对大家有用,大家多多支持。如果觉得有用请给个Star-GLScanner,在这里万分感谢。

相关文章

  • 二维码扫描/生成框架GLScanner使用详解 CocoaPo

    GLScanner 最好用的iOS二维码、条形码,扫描、生成框架,支持闪光灯,从相册获取;个性化修改,错误处理回调...

  • AVFoundation实现二维码的扫描

    AVFoundation实现二维码的扫描 苹果原生二维码的创建和扫描 二、生成二维码 导入CoreImage框架 ...

  • 二维码扫描和二维码图片识别封装

    之前写过文章介绍过苹果原生CoreImage框架的使用,如何用来生成二维码和扫描二维码http://www.jia...

  • 二维码扫描

    二维码扫描主要使用苹果自带的AVFoundation框架 设置二维码周边黑框 设置二维码扫描layer AVCap...

  • iOS开发 WiFi连接

    通过手机系统相机扫描WiFi二维码连接WiFi 很简单, 生成二维码的时候, 使用 即可系统相机扫描到二维码后, ...

  • 简单的二维码扫描(系统)

    使用系统框架搭建的简单二维码扫描: 首先:如图:需要添加AVFoundation框架(其他框架不用添加) 接着开始...

  • 二维码

    filter 滤镜 使用二维码要使用这个框架 生成二维码 #import"ViewController.h" #i...

  • Swift实现二维码扫描与生成

    # ****扫描二维码 ## ****第三方框架 ZXing Android使用多 ZBar iOS使用多 提示:...

  • Android 生成带logo的二维码

    这里生成二维码是使用ZXing的开源项目,ZXing是谷歌的一个开源库,可以用来生成二维码、扫描二维码。ZXing...

  • 二维码相关

    二维码生成生成高清二维码扫描二维码 二维码生成 需要导入CoreImage/CoreImage.h 中间的图片就是...

网友评论

    本文标题:二维码扫描/生成框架GLScanner使用详解 CocoaPo

    本文链接:https://www.haomeiwen.com/subject/dodhhxtx.html