iOS ZBarSDK的基本使用:扫描

1.首先使用Cocoapods导入库 ZBarSDK

2.敲代码:

ViewController.h

//
//  ViewController.h
//  erweima
//
//  Created by shaoting on 15/12/16.
//  Copyright © 2015年 9elephas. All rights reserved.
//

#import <UIKit/UIKit.h>
#import "ZBarSDK.h"
@interface ViewController : UIViewController<ZBarReaderDelegate>

@end

ViewController.m

//
//  ViewController.m
//  erweima
//
//  Created by shaoting on 15/12/16.
//  Copyright © 2015年 9elephas. All rights reserved.
//

#import "ViewController.h"
#define ScreenFrame [[UIScreen mainScreen]bounds]
@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    UIButton * btn = [UIButton buttonWithType:UIButtonTypeCustom];
    btn.frame = CGRectMake(0, 0, 50, 50);
    [btn setTitle:@"扫描" forState:UIControlStateNormal];
    btn.backgroundColor = [UIColor redColor];
    [btn addTarget:self action:@selector(erweima:) forControlEvents:UIControlEventTouchUpInside];
    [self.view addSubview:btn];
    // Do any additional setup after loading the view, typically from a nib.
}
-(void)erweima:(UIButton *)btn{
    ZBarReaderViewController * reader = [ZBarReaderViewController new];//初始化相机控制器
    reader.readerDelegate = self;
    reader.supportedOrientationsMask = ZBarOrientationMaskAll;//基本适配
    reader.showsHelpOnFail = YES;
    reader.scanCrop = CGRectMake(0, 0, 1, 1);
    ZBarImageScanner * scanner = reader.scanner;
    [scanner setSymbology:25 config:0 to:0];
    UIView * view = [[UIView alloc]initWithFrame:CGRectMake(0, 0, ScreenFrame.size.width, ScreenFrame.size.height)];
    reader.cameraOverlayView = view;
    [self presentViewController:reader animated:YES completion:^{

    }];

}
- (void) imagePickerController: (UIImagePickerController*) reader
 didFinishPickingMediaWithInfo: (NSDictionary*) info{
    id<NSFastEnumeration> results =
    [info objectForKey: ZBarReaderControllerResults];
    ZBarSymbol *symbol = nil;
    for(symbol in results)
        break;
    UIAlertView * alert = [[UIAlertView alloc]initWithTitle:@"消息" message:symbol.data delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:@"OK1", nil];
        [alert show];

}
- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

@end

使用真机测试:

时间: 2024-10-23 22:59:15

iOS ZBarSDK的基本使用:扫描的相关文章

iOS 开发之 ZBarSDK 二维码扫描自定义二维码扫描页面(二)

iOS 开发之 ZBarSDK 二维码扫描自定义二维码扫描页面(二) 上一篇解决了ZBarSDK不支持64bit的问题,下面我们就可以使用ZBarSDK了. 导入ZBarSDk.h文件 附上代码: // //  MeViewController.m //  Auditory Blog // //  Created by 寒竹子 on 15/4/28. //  Copyright (c) 2015年 寒竹子. All rights reserved. // #define ScanWidth  2

iOS开发-二维码扫描和应用跳转

iOS开发-二维码扫描和应用跳转 序言 前面我们已经调到过怎么制作二维码,在我们能够生成二维码之后,如何对二维码进行扫描呢? 在iOS7之前,大部分应用中使用的二维码扫描是第三方的扫描框架,例如ZXing或者ZBar.使用时集成麻烦,出错也不方便调试.在iOS7之后,苹果自身提供了二维码的扫描功能,从效率上来说,原生的二维码远高于这些第三方框架.本文讲解如何使用原生框架实现二维码扫描功能,并且进行扫描后的项目跳转.ps:本期的源代码会在文章结尾给出链接 扫描相关类 二维码扫描需要获取摄像头并读取

二维码扫描(iOS原生二维码扫描)

一.关于二维码扫描的第三方库有很多:例如比较常用的两个 1.ZBar SDK ZBar为我们提供了两种使用方式,一种是直接调用ZBar提供的ZBarReaderViewController打开一个扫描界面,另一种方式是使用ZBar提供的可以嵌在其他视图中的ZBarReaderView,实际项目中我们更可能会使用第二种方式,这可以让我们对界面做更多的定制,详细的百度查找相关文档来看. 2.ZXing(Github镜像地址)是一个开源的条码生成和扫描库(开源协议为Apache2.0).它不但支持众多

IOS 使用 ZbarSDK 二维码扫描

1. 下载SDK   https://github.com/bmorton/ZBarSDK 2. 引用到项目中 3. 添加引用 4. AppDelegate中添加下面代码 5. 在需要使用扫描的controller中实现ZBarReaderViewDelegate 6. 对应的m文件中 #import "ViewController.h" @interface ViewController () { UITextField *resultText; ZBarReaderView *re

iOS 开发之 ZBarSDK 二维码扫描 静态库不支持64bit完美解决(一)

由于ZBarSDK不支持arm64 bit,下面是自己进行编译打包生成支持64bit的.a文件的方法. 首先下载ZBarSDK,解压后打开iPhone的文件夹,删除Example文件夹.然后打开zbar.xcodeproject,设置工程编译环境为Release环境. 修改Standard Achived 为armv7 arm64,然后build.注意:先选择真机build,此时不需要插入真机.然后,在选择模拟器build. 得到两个.a文件. 最后一步: 将真机下得到的.a文件和模拟器下得到的

iOS 系统二维码扫描(可限制扫描区域)

使用 AVFoundation系统库来进行二维码扫描并且限制扫描二维码的范围.(因为默认的是全屏扫描) -(void)beginCode { //1.摄像头设备 AVCaptureDevice *device = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo]; /* // Media types AVMediaTypeVideo AVMediaTypeAudio AVMediaTypeText AVMediaTypeC

iOS实现支付宝或微信扫描银行卡号信息

随着人的懒的助长及人的聪明程度提高,慢慢忘记笔,习惯了键盘操作或手写,慢慢我们进入扫描识别的都市里, 今天当你体验微信及支付宝扫描识别银行卡号方便准确性特别高: github 上提供的资料有, https://github.com/card-io/card.io-iOS-SDK https://github.com/paypal/PayPal-iOS-SDK 等 如果是xcode5或者更新的版本,只需要添加下面的库 * AVFoundation * AudioToolbox * CoreMedi

iOS 原生二维码扫描(可限制扫描区域)

写这篇文章的主要原因不是展示如何使用 AVFoundation   来进行二维码扫描,更主要的是限制扫描二维码的范围.(因为默认的是全屏扫描) 项目遇到扫描二维码的功能需求,这里我放弃了使用三方库,而采用了苹果原生的扫描. 原生的好处就是扫描特别快效率特别高,但是遇到一个问题就是不知道怎么去限制扫描范围. 还是先简单说一下怎么使用来进行二维码扫描吧. 首先是要用到的几个类 @property (strong,nonatomic)AVCaptureDevice * device; @propert

iOS 原生二维码扫描

哎 关于限制扫码范围的控制,弄了老夫好久,还是不尽如意 .h 1 // 2 // LIUScanTwoDimensionalCode.h 3 // YouYouShoppingCenter 4 // 5 // Created by liujun on 15/7/28. 6 // Copyright (c) 2015年 刘俊. All rights reserved. 7 // 8 9 #import <UIKit/UIKit.h> 10 #import <AVFoundation/AVF