0

ストーリーボード tableviewcontroller を使用して (コードを使用して) 動的テーブルを実装しようとすると、次のコードを実行すると詳細ビューがプッシュされません。

[[self navigationController] pushViewController:previewController animated:YES];

エラーはスローされません。選択された表のセルが青く強調表示され、そのままになることを除いて、何の手がかりも与えられません。この問題は、ストーリーボードを使用する場合に一般的ですが、xibs を使用する場合には一般的ではありません。

didSelectRowAtIndexPathメソッドは次のとおりです。

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    QLPreviewController *previewController = [[QLPreviewController alloc] init];
    previewController.dataSource = self;
    previewController.delegate = self;

    // start previewing the document at the current section index
    previewController.currentPreviewItemIndex = indexPath.row;

    [[self navigationController] pushViewController:previewController animated:YES];
    [previewController release];
}

問題のあるサンプル プロジェクトへのリンクを次に示します。

4

1 に答える 1

4

[self navigationController] が nil であるため、QLPreviewController はプッシュされません。

次のように UINavigationController をストーリーボードに追加する必要があります。

(FirstViewController が UITableViewController であると仮定します) 左から右へ: UITabBarController、UINavigationController、FirstViewController

于 2012-07-25T19:22:23.600 に答える