Я использую библиотеку zxing для сканирования штрих-кодов. Всякий раз, когда я сканирую неправильный штрих-код, почтовый композитор откроет письмо, в котором говорится, что неверный штрих-код сканируется. Когда мы отказываемся от почтового композитора, мы можем снова сканировать. Однако, когда я уволить почты композитора, мое приложение получает разбился, говоря «[CALayer isKindOfClass]: сообщение, отправленное на высвобождены, например»[CALayer isKindOfClass:]: сообщение отправлено на освобожденный экземпляр
int main(int argc, char * argv[])
{
@autoreleasepool {
return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));// app crashed at this line
}
}
Вот что у меня есть
-(void)viewDidDisappear:(BOOL)animated{
[super viewDidDisappear:animated];
[self.capture.layer removeFromSuperlayer];
[self.view.layer removeFromSuperlayer];
self.view = nil;
self.capture=nil;
}
- (void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
self.capture.delegate = self;
self.capture.layer.frame = self.view.bounds;
_scanRectView.layer.borderColor=[UIColor redColor].CGColor;
_scanRectView.layer.borderWidth = 2;
CGAffineTransform captureSizeTransform = CGAffineTransformMakeScale(320/self.view.frame.size.width, 480/self.view.frame.size.height);
self.capture.scanRect = CGRectApplyAffineTransform(self.scanRectView.frame, captureSizeTransform);
}
- (void)viewDidLoad
{
[super viewDidLoad];
//initialising the zxing library to start the camera
self.capture = [[ZXCapture alloc] init];
self.capture.camera = self.capture.back;
self.capture.focusMode = AVCaptureFocusModeContinuousAutoFocus;
self.capture.rotation = 90.0f;
self.capture.layer.frame = self.view.bounds;
[self.view.layer addSublayer:self.capture.layer];
[self.view bringSubviewToFront:self.scanRectView];
[self.view bringSubviewToFront:self.decodedLabel];
}
Пожалуйста, скажите мне, где я делаю неправильно.
Заранее спасибо.
я удалил эти строки с точки зрения действительно исчез, приложения не разбивая в настоящее время. Но, мое приложение должно открыть слой камеры и начать сканирование, но слой замораживается .... код в поле зрения не загружается, я думаю! –
после того, как мы рассортируем почтовый композитор, слой камеры должен быть добавлен в представление, но здесь этого не происходит. –
ok T_77. Скажите, пожалуйста, что вы используете для захвата ZXCapture *. – ObjC