1.前言  

目前市场主流APP里,二维码/条形码集成主要分两种表现形式来集成:
a. 一种是调用手机摄像头并打开系统照相机全屏去拍摄
b. 一种是自定义照相机视图的frame,自己控制并添加相关扫码指南
 
今天我就用ZBarSDK来实现上诉两种主流集成方式,与大家共同交流学习/
 

2.第一步导入ZBarSDK  

可以从github上下载好ZBarSDK,导入项目,并且导入相关iOS.framework 如图:
 

3.集成扫描二维码/条形码  

3.1.调用手机摄像头并打开系统照相机全屏去拍摄  

实现效果图: 1.一个按钮“扫我” —— 2.点击后打开系统照相机 —— 3.进入全屏拍摄,拍摄二维码 —— 4.识别成功自动关闭照相机

3.1.1.导入#import “ZBarSDK.h" 然后实现相关协议  

调用系统相机全屏拍摄,使用的协议是<ZBarReaderDelegate>,自定义相机窗口使用的是<ZBarReaderViewDelegate>

3.1.2.在按钮“扫我”的click方法里实现相关细节  

    //初始化相机控制器
ZBarReaderViewController *reader = [ZBarReaderViewController new]; //设置代理
reader.readerDelegate = self;
//基本适配
reader.supportedOrientationsMask = ZBarOrientationMaskAll; //二维码/条形码识别设置
ZBarImageScanner *scanner = reader.scanner; [scanner setSymbology: ZBAR_I25
config: ZBAR_CFG_ENABLE
to: 0];
//弹出系统照相机,全屏拍摄
[self presentModalViewController: reader
animated: YES];

3.1.3.实现代理方法  

3.2.自定义照相机视图的frame,自己控制并添加相关扫码指南  

3.2.1.导入#import “ZBarSDK.h" 然后实现相关协议  

调用系统相机全屏拍摄,使用的协议是<ZBarReaderDelegate>,自定义相机窗口使用的是<ZBarReaderViewDelegate>
 

3.2.2.在按钮“扫我”的click方法里实现相关细节  

     //初始化照相机窗口
ZBarReaderView *readview = [ZBarReaderView new]; //自定义大小
readview.frame = CGRectMake(100, 100, 300, 300);
//自定义添加相关指示.........发挥各自的APP的想象力
//此处省略美化10000行代码...................
//………………………..
// 好进入正题—— 接着设置好代理
readview.readerDelegate = self; //将其照相机拍摄视图添加到要显示的视图上
[self.viewaddSubview:readview]; //二维码/条形码识别设置
ZBarImageScanner *scanner = readview.scanner; [scanner setSymbology: ZBAR_I25
config: ZBAR_CFG_ENABLE
to: 0]; //启动,必须启动后,手机摄影头拍摄的即时图像菜可以显示在readview上
[readview start];

3.2.3.实现代理方法  

作者: 清澈Saup
出处:http://www.cnblogs.com/qingche/
本文版权归作者和博客园共有,欢迎转载,但必须保留此段声明,且在文章页面明显位置给出原文连接。

最新文章

  1. web app iphone4 iphone5 iphone6 响应式布局 适配代码
  2. Ubuntu下安装R语言和开发环境
  3. javascript实现列表的点击展开折叠
  4. GCD-Grand Central Dispatch
  5. C#获取CPUID(MD5输出),网卡ID,主DNS,备用DNS
  6. c# Chart设置样式
  7. [转]Python中的矩阵转置
  8. 学习okhttp wiki--Connections.
  9. 让textbox紧贴IME
  10. vue 组件中数组的更新
  11. Signed Distance Field Shadow in Unity
  12. B. Alyona and a tree
  13. 2017-2018-2 20172310『Java程序设计』课程 结对编程练习_四则运算_第二周
  14. php 命令行参数
  15. python 模块 - 序列化 json 和 pickle
  16. WORD文档中插入页码的问题
  17. (笔记)Linux下C语言实现静态IP地址,掩码,网关的设置
  18. iOS - 开发代码部分规范
  19. Vue.js学习笔记(一) - 起步
  20. 《LeetBook》LeetCode题解(1) : Two Sum[E]——哈希Map的应用

热门文章

  1. php实现银联支付
  2. 07.centos7构建 IntelliJ IDEA(简称IDEA)开发环境
  3. DVWA:环境搭建
  4. PHP中使用Redis接管文件存储Session详解
  5. (数据科学学习手札55)利用ggthemr来美化ggplot2图像
  6. 20155215 《Java程序设计》实验二( Java面向对象程序设计)实验报告
  7. 【LG3703】[SDOI2017]树点涂色
  8. underscore.js 分析 第四天
  9. 【RAC搭建报错】libcap.so.1:cannot open shared object file
  10. 三、Django安装和流程