2

我正在使用 ZBarSDK 使用 iPad 扫描二维码。我目前已经成功地工作了。但是,我目前的代码在全屏模式视图控制器中打开相机,但我想将相机视图嵌入到 UIView 中。

这是我现在的代码,它可以作为模态视图控制器正常工作。但我想在我创建的名为“showCamera”的 UIView 中显示相机。我搜索了网络和这些论坛,并且有一些类似的问题,但没有在答案中提供代码。

ZBarReaderViewController *reader = [ZBarReaderViewController new];
reader.readerDelegate = self;
reader.showsZBarControls = TRUE;
reader.cameraDevice=UIImagePickerControllerCameraDeviceFront;

reader.readerView.torchMode = 0;

ZBarImageScanner *scanner = reader.scanner;
[scanner setSymbology: ZBAR_I25
               config: ZBAR_CFG_ENABLE
                   to: 0];

// present and release the controller
[self presentModalViewController: reader animated: YES];

正如我之前所说,我要在其中显示相机的 UIView 是:

@property (strong, nonatomic) IBOutlet UIView *showCamera;

提前致谢!

4

1 回答 1

3

在 iOS 4 之前,相机将始终全屏打开。您可以做的是用您自己的视图覆盖该屏幕的一部分。您可以通过将视图放在它上面(带有透明区域)来做到这一点:

reader.cameraOverlayView = myView;

从 iOS 4+ 开始,您可以使用 readerView。由于它只是一个 UIView,因此您可以像使用任何其他视图一样使用它。例如:

readerView = [ZBarReaderView new]; readerView.frame = CGRectMake(...); // other view setup... [self.view addSubview: readerView];
于 2012-12-13T10:08:18.303 回答