0

新しいコントローラーをnavigationControllerにプッシュしようとしていますが、なぜ起動しないのかわかりません。1)secondViewControllerのインスタンスも動作しないことを確認しました。2)。'.xib "の接尾辞を試しましたが、これも機能しません。3)bundle:nilも機能しません。

ARCを使用しています。誰かがここで問題が何であるかを指摘できますか?

-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    NSLog(@" YOU SELECTED ROW ..");
    secondViewController *secController = [[secondViewController alloc] initWithNibName:@"secondViewController.xib" bundle:[NSBundle mainBundle]];
    NSLog (@"View Controller %@ ", secController);
        [self.navigationController pushViewController:secController animated:YES];
    }
4

3 に答える 3

0

ペン先がメインバンドルにある場合は、バンドルを渡す必要はありません。nilを渡すことは機能するので、これを変更します。

[[secondViewController alloc] initWithNibName:@"secondViewController.xib" bundle:[NSBundle mainBundle]];

これに:

[[secondViewController alloc] initWithNibName:@"secondViewController" bundle:nil];

UIKitがクラスと同じ名前のペン先を探してペンnil先名を渡すという事実を利用することもできます。

于 2012-05-05T05:10:09.447 に答える
0

私はあなたのコードを編集します。これを試してみてください。

 -(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    NSLog(@" YOU SELECTED ROW ..");
    secondViewController *secController = [[secondViewController alloc] initWithNibName:@"secondViewController" bundle:nil];
    NSLog (@"View Controller %@ ", secController);
    [self.navigationController pushViewController:secController animated:YES];
}
于 2012-05-05T05:18:19.200 に答える
0

ナビゲーションコントローラーを使用していますか?self.NaviagationControllerを確認してください。メモリ内にありますか?0*0の可能性があります

于 2012-05-05T07:36:48.650 に答える