0

私はまだ iPhone でプログラミングを始めたばかりで、自分の問題を調査しましたが、解決策が見つかりません。

ZBar SDK 統合チュートリアルに従って、タブ コントローラー内でアプリを最後に動作させることができました。

私がやろうとしているのは、結果を別のViewControllerに移動することです。

- (void) imagePickerController: (UIImagePickerController*) reader
 didFinishPickingMediaWithInfo: (NSDictionary*) info
{
    // ADD: get the decode results
    id<NSFastEnumeration> results =
    [info objectForKey: ZBarReaderControllerResults];
    ZBarSymbol *symbol = nil;
    for(symbol in results)
        // EXAMPLE: just grab the first barcode
        break;

    ProductViewController *product = [self.storyboard instantiateViewControllerWithIdentifier: @"ProductView"];

    product.resultImage = [info objectForKey: UIImagePickerControllerOriginalImage];
    product.resultText = symbol.data;

    [reader dismissModalViewControllerAnimated:YES];
    [self presentModalViewController:product animated:YES];
}

私がコードで抱えている問題は、製品ビュー コントローラーが表示されないことです。

Xcode 4.5、iOS 6 SDK を使用。

4

2 に答える 2

0

上記のアプローチを放棄することになり、代わりにナビゲーションコントローラーに表示を処理する機能を追加しました。

スキャンの表示:

[[self targetController] displayNewObject:scan];

受信側:

- (void)displayNewObject:(_Scan *)scan
{
    self.scan = scan;
    self.tabBarController.selectedViewController = [self.tabBarController.viewControllers objectAtIndex:1];
    [[self navigationController] popToRootViewControllerAnimated:NO];
    [self performSegueWithIdentifier: @"ShowScanDetail" sender: self];
    self.scan = nil;
}
于 2013-11-13T21:52:08.370 に答える