TabBarナビゲーションコントロールとTableViewメソッドを持つアプリケーションdidselectrowatindexpath

私はiOS開発の初心者で、私のアプリケーションに問題があります。私はタブバーのナビゲーションとTableViewを実装していますが、メソッドを呼び出すとdidselectrowatindexpathが表示されません。これは私のアプリのコードです:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    NSLog(@"ciao");
   //UITableViewStyleGrouped table view style will cause the table have a textured background 
   //and each section will be separated from the other ones.
    controller = [[DetailViewController alloc] init];
                                        //initWithStyle:UITableViewStyleGrouped 
                                        //andDvdData:[dao libraryItemAtIndex:indexPath.row]];
    controller.title = [[dao libraryItemAtIndex:indexPath.row] valueForKey:@"content"];
    [self.navigationController pushViewController:controller animated:YES];

}

#import "DetailViewController.h" 

@interface ListItemsTableView : UIViewController {

    IBOutlet    UITableView     *myTableView;
    Dfetch                      *dao;
    DetailViewController        *controller;

}
2
データが入力されていますか? myTableView.delegate = selfを設定しましたか?
追加された 著者 Ravin,

1 答え

UIViewControllerに適切な初期化子を使用していません。

あなたが使用すると予想されるのは、 [UIViewController initWithNibName:bundle:] (Appleのリンク先のドキュメント)

あなたの "コントローラ"オブジェクトがNULLだと思う。

0
追加された
よく... NULLではないかもしれませんが、指定された初期化子を使用していない場合、View Controllerはおそらく適切に設定されていません。 ここに関連する質問があります。
追加された 著者 Michael Dautermann,
彼が alloc init を呼び出した場合、 'controller'は nil ではありません。
追加された 著者 beryllium,