Iphone 为什么这个pushViewController不工作?

Iphone 为什么这个pushViewController不工作?,iphone,objective-c,ios,pushviewcontroller,Iphone,Objective C,Ios,Pushviewcontroller,我有一个UIViewController类,它有一个按钮,可以触发以下操作: DetailViewController *viewController = [[DetailViewController alloc] initWithNibName:@"DetailViewController" bundle:nil]; [self.navigationController pushViewController:viewController animated:YES]; [viewControll

我有一个UIViewController类,它有一个按钮,可以触发以下操作:

DetailViewController *viewController = [[DetailViewController alloc] initWithNibName:@"DetailViewController" bundle:nil];
[self.navigationController pushViewController:viewController animated:YES];
[viewController release];

为什么推动什么都不起作用?如果重要的话,UIViewController位于UIAbbarController中。

一般来说,我最好的猜测是您尚未创建
UINavigationController
。首先需要创建一个
UINavigationController
,然后才能推送到堆栈上


您可以使用
navigationController
属性检查当前viewController(
self
)当前是否在
UINavigationController
的层次结构中;如果不是,则
navigationController
属性返回nil。

因为
self.navigationController
是nil?如果您没有创建UINavigationController来管理UITabBarController当前选项卡的内容,那么您没有任何东西可以将新的视图控制器推送到其中