IOS 二维码相机操作栏自定义实例

本文介绍如何在应用中自定义二维码扫描器的界面和功能,包括禁用不常用符号集以提高性能,并展示了实现过程中的关键代码片段。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

作者:朱克锋

邮箱:zhukefeng@iboxpay.com

转载请注明出处:http://blog.youkuaiyun.com/linux_zkf

在二维码的操作中,常常会因为某些需要要改变原来的相机的操作栏,这里给出一个简单的实例,其它相关的状态可以参考实现

实例图示:


- (void)QRscan

{

    // ADD: present a barcode reader that scans from the camera feed

    ZBarReaderViewController *reader = [ZBarReaderViewControllernew];

    reader.readerDelegate =self;

    reader.wantsFullScreenLayout =NO;

    reader.showsZBarControls =NO;

    reader.cameraOverlayView=[selfsetOverlayPickerView];

    ZBarImageScanner *scanner = reader.scanner;

    // TODO: (optional) additional reader configuration here

    

    // EXAMPLE: disable rarely used I2/5 to improve performance

    [scanner setSymbology:ZBAR_I25

                   config:ZBAR_CFG_ENABLE

                       to: 0];

    // present and release the controller

    [selfpresentModalViewController: reader

                            animated: YES];

    [reader release];

}

- (UIView *)setOverlayPickerView

{

    UIView *overlayView = [[[UIViewalloc] initWithFrame:CGRectMake(0,0, 320, 480)]autorelease];

    [overlayView setBackgroundColor:[UIColorclearColor]];

    

    UIToolbar *toolBar = [[UIToolbaralloc] init];

    

    UIBarButtonItem *backButton = [[UIBarButtonItemalloc] initWithTitle:@"取消"style:UIBarButtonItemStyleBorderedtarget:selfaction:@selector(dismissOverlayView:)];

   

    [toolBar setItems:[NSArrayarrayWithObjects:backButton,nil]];

    [toolBar setBarStyle:UIBarStyleDefault];

    CGRect toolBarFrame;

    toolBarFrame = CGRectMake(0,420, 320, 44);

    [toolBar setFrame:toolBarFrame];

    

    [overlayView addSubview:toolBar];

    

    [backButton release];

    [toolBar release];

    

    return overlayView;

}

- (void)dismissOverlayView:(id)sender{ 

    [selfdismissModalViewControllerAnimated: YES];

}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值