我在我的一个项目(iOS SDK 5.1、XCode 4.4.1 和运行 iOS 5.5.1 的设备)中使用 ZBar iPhone SDK。我正在使用 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);
}
但是在随后的运行中(在我推送视图并再次返回此屏幕后)我的视图变得模糊。
我在这里错过了什么吗?任何帮助/建议/评论都会有所帮助。