为什么不能推送我的新ViewController?

时间:2012-09-04 00:29:28

标签: objective-c uiviewcontroller uinavigationcontroller pushviewcontroller xcode4.4

所以,我有一个主菜单,当我从主菜单中单击一个按钮时,我想显示另一个ViewController,所以我创建一个NavigationController,我将ViewController添加到此NavigationController并尝试显示,但没有任何反应。 我推送新ViewController的代码:

SubMenuViewController *subVC = [[SubMenuViewController alloc]initWithNibName:@"SubMenuViewController" bundle:nil];
UINavigationController *nav = [[UINavigationController alloc] init];
[nav pushViewController:subVC animated:YES];
nav = nil;

当按下一个按钮时,在MainViewController中调用此代码...

我的SubMenuViewController创建了一个SplitViewController,还有两个NavigationController,一个用于左边的表,另一个用于右边的表,但这些不是问题,对吧?

如果您需要更多信息来帮助我,请告诉我

2 个答案:

答案 0 :(得分:1)

您正在创建的UINavigationController需要成为视图控制器层次结构的一部分。正如你所拥有的那样,你刚刚创建了它,但没有将它添加到任何东西中。您最好在层次结构的顶部创建它并将子视图推送到它上面,而不是试图在运行中创建它。

答案 1 :(得分:0)

我已经解决了,甚至以为现在也不能回去了,但可以推出一个新的ViewController。在AppDelegate中,我忘记了这个:

self.window.rootViewController = nab;

现在推送另一个ViewController。感谢高度支持的帮助