2011-02-02 75 views
2

也许这是一个太简单的问题,但我有点困在这里。我已经实现了一个继承自UITableViewController的类。这个类是我通过代码构建的分割视图的根控制器,而不是Interface Builder。问题是我试图从表中的accesory视图中显示一个详细视图,而我的实例中的navigationController属性为零。我不知道如何实例化一个新的UINavigationController,以便能够在我的代码中显示详细的视图。创建一个UINavigationController在UITableViewController中使用,而不需要Interface Builder

这是我想要使用的accesory按钮:

- (void)tableView:(UITableView *)tableView 
     accessoryButtonTappedForRowWithIndexPath:(NSIndexPath *)indexPath { 

    PartDetailViewController *partDetailViewController = 
          [[PartDetailViewController alloc] initWithNibName:@"PartDetailView" bundle:[NSBundle mainBundle]]; 

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

任何暗示将非常感激。

由于提前,

费德里科

回答

0

如果self.navigationController为零,表示您没有在导航控制器中“推送”您的UITableViewController实例。

所以我可以想像,从你的描述,你有一个UISplitViewController一个iPad应用程序,你的表已经被实例化拆分视图的“根”视图控制器里面,有这么一个层次,如:

UISplitViewController ==>(root)==> UITableViewController

。如果是这种情况,你需要做的是创建一个UINavigationController,将表视图控制器推入UINavigationController,然后根据这个模式定义分割视图“root”控制器为UINavigationController:

UISplitViewController ==>(root)==> UINavigationViewController ==> UITableViewController

希望这可以帮助你。

+0

非常感谢。那正是我所期待的。 – Federico 2011-02-02 15:19:16

0

创建UINavigationController,添加UITableViewCOntrollerUINavigationController并添加UINavigationController到拆分视图的视图。

相关问题