【问题标题】:Not dismiss ZBarReaderViewController in imagePickerController didFinishPickingMediaWithInfo?不关闭 uiimagePickerController didFinishPickingMediaWithInfo 中的 ZBar Reader ViewController?
【发布时间】:2013-05-30 13:24:45
【问题描述】:

我想为 Scan Books 条形码创建应用程序,但是当我可以成功扫描条形码时,ZBarReaderViewController 不会在 imagePickerController didFinishPickingMediaWithInfo 委托中关闭并且我收到警告:

警告:在演示或关闭时尝试从视图控制器中关闭 正在进行中!

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
{
    id<NSFastEnumeration> results = [info objectForKey: ZBarReaderControllerResults];
    ZBarSymbol *symbol = nil;
    for(symbol in results)
        // EXAMPLE: just grab the first barcode
        break;
    // EXAMPLE: do something useful with the barcode data
    resultLable.text = symbol.data;
    isbnResultString=symbol.data;
    NSLog(@"isbnResultString-----%@",isbnResultString);
    isbnLableText.text=isbnResultString;
    NSLog(@"%@",[info objectForKey: UIImagePickerControllerOriginalImage]);
    // EXAMPLE: do something useful with the barcode image
    barCodeImageView.image=[info objectForKey: UIImagePickerControllerOriginalImage];
    // ADD: dismiss the controller (NB dismiss from the *reader*!)
    [self dismissViewControllerAnimated:YES completion:nil];

    if (isbnResultString.length!=0)
    {
        if(![self connectedToInternet])
        {
            [appDelagate showActivityIndicator];
            appDelagate.isNetConnected=NO;
            [self internetAlert];
        }
        else
        {
            [self getBookDetailsByISBN:symbol.data];
        }
    }
}

如何关闭 ZBarReaderViewController?

【问题讨论】:

  • 发布代码如何关闭视图控制器?
  • 这行代码我也可以用,不过这对我没用……

标签: iphone dismiss zbar-sdk


【解决方案1】:

有同样的问题, performSeletor:withObject:afterDelay: 对我来说很好。

- (void)imagePickerController:(UIImagePickerController *)reader didFinishPickingMediaWithInfo:(NSDictionary *)info {
    // do some userful stuff

    [self performSelector:@selector(dismissZBar) withObject:nil afterDelay:1];
}

- (void)dismissZBar {
    [self.presentedViewController dismissViewControllerAnimated:YES completion:^{
        // do some stuff after dismiss
    }];
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多