- (void)viewDidLoad
{
self.capture = nil;
self.capture = [[ZXCapture alloc] init];
self.capture.camera = self.capture.back;
self.capture.focusMode = AVCaptureFocusModeContinuousAutoFocus;
self.capture.rotation = 90.0f;
self.capture.layer.frame = CGRectMake(0, 150, self.view.frame.size.width, self.view.frame.size.height);
self.capture.delegate = self;
[self.view.layer addSublayer:self.capture.layer];
[self.capture start];
}
我停止了相机,我正在使用下面的方法,它工作正常
[self.capture stop];
我正在尝试启动相机,我正在使用以下方法
[self.capture start];
以上方法无法正常工作无法打开相机进行扫描
请帮忙 提前谢谢。
答案 0 :(得分:1)
stop方法的源代码有
[self.layer removeFromSuperlayer];
图层已从self.view.layer中删除,因此在start方法中,再次添加图层并将自定义视图置于最前面。
[self.view.layer addSublayer:self.capture.layer];
[self.view bringSubviewToFront:self.startButton];
[self.capture start];
答案 1 :(得分:0)
不要使用ZXing,iOS7支持条形码扫描(http://www.infragistics.com/community/blogs/torrey-betts/archive/2013/10/10/scanning-barcodes-with-ios-7-objective-c.aspx)
答案 2 :(得分:0)
请移动start方法viewDidAppear它对我来说很好。
- (void)viewDidAppear:(BOOL)animated
{
[super viewDidAppear:animated];
[self.capture start];
}