0

この機能を使用していますが、機能していません。StoryBoard と xcode 4.3 を使用しています。

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    // Navigation logic may go here. Create and push another view controller.
    [tableView deselectRowAtIndexPath:indexPath animated:YES];

     pushnavViewController *detailViewController = [[pushnavViewController alloc] initWithNibName:@"pushnavViewController" bundle:nil];

    detailViewController.pushh.text = [listt objectAtIndex:indexPath.row];
     // Pass the selected object to the new view controller.
     [self.navigationController pushViewController:detailViewController animated:YES];

}
4

3 に答える 3

1

ここに答えがあります:

ストーリーボードを使用している場合は、使用する必要があります

pushnavViewController *detailViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"pushnavViewController"];

いいえ

     pushnavViewController *detailViewController = [[pushnavViewController alloc] initWithNibName:@"pushnavViewController" bundle:nil];

また、storyboradから識別子を設定することを忘れないでください。

于 2012-06-29T05:20:33.010 に答える
0

コメントからこれを取り除いて、解決策を突き刺すと思いました。申し訳ありませんが、それは直接的な解決策ではありませんが、より多くの提案です...

おそらく最善の方法は、(Xcode 4.xを使用している場合)「マスター-詳細アプリケーション」テンプレートを選択して新しいプロジェクトを作成することです。AppDelegateクラスを調べて、MasterViewControllerがUINavigationControllerのルートビューコントローラーとしてどのように追加されているかを確認します。これがどのように機能するかを確認し、同じことを状況に適用してみてください。

また、UINavigationControllerのクラスリファレンスも確認してください。

于 2012-06-28T22:25:59.633 に答える