网址学习:http://blog.csdn.net/linux_zkf/article/details/7724867     二维码扫描界面自定义

作者:朱克锋

邮箱:zhukefeng@iboxpay.com

转载请注明出处:http://blog.csdn.net/linux_zkf

这个简单的实例实在ZBarReaderViewController的view层上再加一层用于定义自己的界面

- (void)QRscan

{

ZBarReaderViewController *reader = [ZBarReaderViewController new];

reader.readerDelegate = self;

//非全屏

reader.wantsFullScreenLayout = NO;

//隐藏底部控制按钮

reader.showsZBarControls = NO;

//设置自己定义的界面

[self setOverlayPickerView:reader];

ZBarImageScanner *scanner = reader.scanner;

[scanner setSymbology: ZBAR_I25

config: ZBAR_CFG_ENABLE

to: 0];

[self presentModalViewController: reader

animated: YES];

[reader release];

}

- (void)setOverlayPickerView:(ZBarReaderViewController *)reader

{

//清除原有控件

for (UIView *temp in [reader.view subviews]) {

for (UIButton *button in [temp subviews]) {

if ([button isKindOfClass:[UIButton class]]) {

[button removeFromSuperview];

}

}

for (UIToolbar *toolbar in [temp subviews]) {

if ([toolbar isKindOfClass:[UIToolbar class]]) {

[toolbar setHidden:YES];

[toolbar removeFromSuperview];

}

}

}

//画中间的基准线

UIView* line = [[UIView alloc] initWithFrame:CGRectMake(40, 220, 240, 1)];

line.backgroundColor = [UIColor redColor];

[reader.view addSubview:line];

[line release];

//最上部view

UIView* upView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 80)];

upView.alpha = 0.3;

upView.backgroundColor = [UIColor blackColor];

[reader.view addSubview:upView];

//用于说明的label

UILabel * labIntroudction= [[UILabel alloc] init];

labIntroudction.backgroundColor = [UIColor clearColor];

labIntroudction.frame=CGRectMake(15, 20, 290, 50);

labIntroudction.numberOfLines=2;

labIntroudction.textColor=[UIColor whiteColor];

labIntroudction.text=@"将二维码图像置于矩形方框内,离手机摄像头10CM左右,系统会自动识别。";

[upView addSubview:labIntroudction];

[labIntroudction release];

[upView release];

//左侧的view

UIView *leftView = [[UIView alloc] initWithFrame:CGRectMake(0, 80, 20, 280)];

leftView.alpha = 0.3;

leftView.backgroundColor = [UIColor blackColor];

[reader.view addSubview:leftView];

[leftView release];

//右侧的view

UIView *rightView = [[UIView alloc] initWithFrame:CGRectMake(300, 80, 20, 280)];

rightView.alpha = 0.3;

rightView.backgroundColor = [UIColor blackColor];

[reader.view addSubview:rightView];

[rightView release];

//底部view

UIView * downView = [[UIView alloc] initWithFrame:CGRectMake(0, 360, 320, 120)];

downView.alpha = 0.3;

downView.backgroundColor = [UIColor blackColor];

[reader.view addSubview:downView];

[downView release];

//用于取消操作的button

UIButton *cancelButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];

cancelButton.alpha = 0.4;

[cancelButton setFrame:CGRectMake(20, 390, 280, 40)];

[cancelButton setTitle:@"取消" forState:UIControlStateNormal];

[cancelButton.titleLabel setFont:[UIFont boldSystemFontOfSize:20]];

[cancelButton addTarget:self action:@selector(dismissOverlayView:)forControlEvents:UIControlEventTouchUpInside];

[reader.view addSubview:cancelButton];

}

//取消button方法

- (void)dismissOverlayView:(id)sender{

[self dismissModalViewControllerAnimated: YES];

}

iOS-二维码扫描界面(转)的更多相关文章

  1. ios二维码扫描插件,适配当前主流扫描软件,自定义扫描界面。

            二维码介绍: 二维码(QR(Quick Response)code),又称二维条码,最早起源于日本. 它是用特定的几何图形按一定规律在平面(二维方向)上分布的黑白相间的图形,是所有信息 ...

  2. IOS开发小功能2:二维码扫描界面的设计(横线上下移动)

    效果图如上,实现的是一个二维码扫描界面. 下面我贴出线条上下移动的代码,至于二维码的代码是用的第三方库. 首先是整体的结构: 注意下面的库文件一个都不能少,否则会报错. TLTiltHighlight ...

  3. Ios二维码扫描(系统自带的二维码扫描)

    Ios二维码扫描 这里给大家介绍的时如何使用系统自带的二维码扫描方法和一些简单的动画! 操作步骤: 1).首先你需要搭建UI界面如图:下图我用了俩个imageview和一个label 2).你需要在你 ...

  4. iOS二维码扫描IOS7系统实现

    扫描相关类 二维码扫描需要获取摄像头并读取照片信息,因此我们需要导入系统的AVFoundation框架,创建视频会话.我们需要用到一下几个类: AVCaptureSession 会话对象.此类作为硬件 ...

  5. iOS - 二维码扫描和应用跳转

    序言 前面我们已经调到过怎么制作二维码,在我们能够生成二维码之后,如何对二维码进行扫描呢? 在iOS7之前,大部分应用中使用的二维码扫描是第三方的扫描框架,例如ZXing或者ZBar.使用时集成麻烦, ...

  6. iOS二维码扫描的实现(Swift)

    随着二维码的普遍使用,二维码扫描也成为了很多app的一个基本功能,本篇主要来介绍一下如何实现一个简单的二维码扫描功能.本文使用了XCode自带的AVFoundation 库,利用Swfit语言实现. ...

  7. 二维码框架ZBarSDK的使用和自己定义二维码扫描界面方法

    假设你不知道ZBarSDK怎么用,请下载demo http://download.csdn.net/detail/u013686641/7858917 假设你已经配置好ZBarSDK .那么以下这个类 ...

  8. ios二维码扫描

    1.添加AVFoundation.framework框架 2,控制器中实现 //第一步添加AVFoundation.framework框架 #import "ViewController.h ...

  9. 自定义ZXing二维码扫描界面并解决取景框拉伸等问题

    先看效果 扫描内容是下面这张,二维码是用zxing库生成的 由于改了好几个类,还是去年的事都忘得差不多了,所以只能上这个类的代码了,主要就是改了这个CaptureActivity.java packa ...

  10. iOS 二维码扫描 通过ZBar ZXing等第三方库

    扫描二维码的开源库有很多如 ZBar.ZXing等 ZBar的使用方法: 下载ZBar SDK 地址https://github.com/bmorton/ZBarSDK ZBarSDK是一个开源的SD ...

随机推荐

  1. CSP模拟赛 number (二分+数位DP)

    题面 给定整数m,km,km,k,求出最小和最大的正整数 nnn 使得 n+1,n+2,-,2nn+1,n+2,-,2nn+1,n+2,-,2n 中恰好有 mmm 个数 在二进制下恰好有 kkk 个 ...

  2. 01_Request和Response

    参考文档 http://www.iamnancy.top/djangorestframework/Responses/ https://q1mi.github.io/Django-REST-frame ...

  3. 【素数判定/筛法进阶算法】-C++

    今天我们来谈一谈素数的判定/筛法. 对于每一个OIer来说,在漫长的练习过程中,素数不可能不在我们的眼中出现,那么判定/筛素数也是每一个OIer应该掌握的操作,那么我们今天来分享几种从暴力到高效的判定 ...

  4. 学习了武沛齐讲的Day10-完

    int       整形 int     将字符串转换为数字 x.bit_length()  ===== 当前数字的二进制,至少用n位表示 str       字符串 x.capitalize()== ...

  5. AcWing P378 骑士放置 题解

    Analysis 这道题跟前几道题差不多,依旧是匈牙利算法求二分图匹配,在连边的时候,要连两个矛盾的位置(即一个骑士和其控制的位置).然后就跑一遍匈牙利算法就好了. #include<iostr ...

  6. ACWing P372 棋盘覆盖 题解

    Analysis 这是一个经典的二分图问题,我们将图进行奇偶染色,注意边界条件的判断.再跑一遍匈牙利算法就行了,跟上一题很像. #include<iostream> #include< ...

  7. 后台(一)vue+element-ui (按需加载)

    vue init webpack    项目名称 npm install axios                    //先安装! npm install --save axios vue-ax ...

  8. SpringBoot项目中,Redis的初次使用

    1.引入Redis依赖包,在application.yml中配置redis <dependency> <groupId>org.springframework.boot< ...

  9. 【HTTP】协议详解

    什么是HTTP协议 协议是指计算机通信网络中两台计算机之间进行通信所必须共同遵守的规定或规则,超文本传输协议(HTTP)是一种通信协议,它允许将超文本标记语言(HTML)文档从Web服务器传送到客户端 ...

  10. 【LOJ #3144】「APIO 2019」奇怪装置

    题意: 定义将一个\(t\)如下转换成一个二元组: \[ f(t) = \begin{cases} x = (t + \left\lfloor \frac{t}{B} \right \rfloor) ...