ZBar API嵌入式扫描仪模糊问题

时间:2012-09-04 06:37:00

标签: iphone ios5 barcode-scanner zbar-sdk

我在我的一个项目中使用ZBar iPhone SDK(iOS SDK 5.1,XCode 4.4.1和运行iOS 5.5.1的设备)。我正在使用SDk本身提供的示例中的嵌入式扫描仪。

现在我面临的问题是我成功扫描条形码并移动到另一个视图控制器(使用导航控制器)。当我回来(弹出第二个视图控制器)时,扫描仪即 ZBarReaderView 不扫描后续条形码,实际上叠加显示扫描条形码的模糊图像,永远无法扫描正常。

这就是我实施的所有内容。在BarScannerViewController.h我声明了

ZBarReaderView*             readerView;

有财产

@property (nonatomic , retain)    IBOutlet UIImageView* imgvScannedBarCode;

现在它已连接到xib中的一个视图。

最后我使用如下设置所需的方法 -

- (void)viewDidLoad {
    [super viewDidLoad];

    // the delegate receives decode results
    readerView.readerDelegate = self;
    [readerView start];
}


- (void) viewDidAppear: (BOOL) animated {
    // run the reader when the view is visible
    [activityIndicatorScanning startAnimating];
    [readerView start];
}

- (void) viewWillDisappear: (BOOL) animated {
    [activityIndicatorScanning stopAnimating];
    [readerView stop];
}

当我扫描任何条形码时所有这些设置首次说EAN123我接到回电

- (void) readerView: (ZBarReaderView*) view
     didReadSymbols: (ZBarSymbolSet*) syms
          fromImage: (UIImage*) img
{
    // do something useful with results
    ZBarSymbol *symbol = nil;
    for(symbol in syms) {
        barCodeFound = YES;
        break;
    }
    // EXAMPLE: do something useful with the barcode data
    NSLog(@"%@",symbol.data);
}

但是在后续运行中(在我推动视图并再次返回此屏幕后),我的视图模糊。

enter image description here

enter image description here

我在这里遗漏了什么吗?任何帮助/建议/评论都会有所帮助。

2 个答案:

答案 0 :(得分:0)

这是我用来启动(并无休止地重启)扫描仪的代码。有趣的是,我注意到我从未停止扫描,但它的工作非常可靠。

- (void) startScan
{
    ZBarReaderViewController *reader = [ZBarReaderViewController new];

    reader.readerDelegate = self;

    ZBarImageScanner *scanner = reader.scanner;

    [scanner setSymbology: ZBAR_I25
                   config: ZBAR_CFG_ENABLE
                   to: 0];

    // present and release the controller
    [self presentViewController:reader animated:YES completion:nil]; // Modal
    [reader release];
}

答案 1 :(得分:0)

我可以通过在项目中重新配置SDK来解决Blur问题。我按照ZBarSDk上提供的嵌入式扫描程序示例进行操作。我想我可能在早点配置时错过了一些必要的设置。