iphone UITableVIew(基于导航)

| 我正在开发基于导航的应用程序。 我的rootViewController包含3个单元格 -当按下第一个按钮时,将按下UIViewController(此工作) -问题在于应该推送UITableViewController的第二个和第三个单元格 该应用程序正在运行,没有错误,也没有崩溃,但是当我导航到tableview时,将查看其中没有任何元素的空表。 这部分代码有问题吗? :
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{

    UIViewController *detailViewController = [[UIViewController alloc] initWithNibName:@\"Introduction\" bundle:nil];
    detailViewController.title=@\"Introduction\";

    UITableViewController *myPictures = [[UITableViewController alloc] initWithNibName:@\"Pictures\" bundle:nil];
    myPictures.title=@\"Pictures\";

    UITableViewController *myImages = [[UITableViewController alloc] initWithNibName:@\"ImagesViewController\" bundle:nil];
    myImages.title=@\"Images\";

    // Pass the selected object to the new view controller.
    if (0 == indexPath.row)
    [self.navigationController pushViewController:detailViewController animated:YES];

    if (1== indexPath.row)
    [self.navigationController pushViewController:myPictures animated:YES];

    if (2== indexPath.row)
    [self.navigationController pushViewController:myImages animated:YES];

    [detailViewController release];
    [myPictures release];   
    [myImages release];
    
已邀请:
您正在做的事情非常错误(除了您原来的问题)。为什么要实例化每个视图控制器,然后仅使用基于当前“单元格选择”的视图控制器?根据加载这些单独视图所需的时间,这会降低您的应用程序运行速度。您只应在\“ if(indexPath.row == 2){\”块内实例化相关的视图控制器。 除此之外,您的方法还有很多问题。因为实例化一个通用的UITableViewController(即使您提供自己的笔尖),您正在做的事情也永远不会奏效,显然只会向您显示一个空视图。您需要拥有一个自己的类,笔尖被绑定为一个委托,该委托将为TableView提供数据。 我相信当您创建这些笔尖文件(例如\“ Pictures \”)时,xcode还会为您提供\'PicturesViewController.h和PicturesViewController.m \“文件吗?如果是这样,您需要在其中编写适当的代码并确保Tableview \“ Pictures \” nib文件中的\'datasource \'和\'delegate \'设置为\'PicturesViewController \'。然后,当您要显示该视图时,请执行以下操作:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{

    if (indexPath.row == 1) {
        ...
    } else if (indexPath.row == 2) {
     PicturesViewController *myPictures = [[PicturesViewController alloc] initWithNibName:@\"Pictures\" bundle:nil];

     [self.navigationController pushViewController:myPictures animated:YES];
     [myPictures release];
    }

} 
    

要回复问题请先登录注册