0

我刚刚更改了我的应用程序,我很困惑。它从根视图开始,然后推送第二个视图,该视图上有一个按钮可以推送另一个视图......所以我决定改为呈现第二个视图控制器,但现在不能从第二个视图推送另一个视图。

根视图中的代码:

 //This works
 [[self navigationController] presentViewController:secondViewController
                                          animated:YES completion:nil];

第二视图的代码:

 //This Does not work
 [[self navigationController] pushViewController:locactionView animated:YES];

编辑:对不起,缺乏细节。不会抛出异常,它根本不会推送“位置视图”。在我展示视图之前,我推送了它,一切正常。同样,当视图最初被推送时,导航栏是可见的,现在正在呈现视图控制器,我无法推送视图或查看导航栏。我希望这有帮助。我不知道我可以添加什么代码,因为在问题发生之前我只更改了一行。

4

2 回答 2

0

In your AppDelegate you could initialize your NavigationController with the rootViewController first, and then you could push the viewControllers on the stack, that could solve your problem

YourNavigationController *yourNavigationController = [[YourNavigationController alloc] initWithRootViewController:self.firstViewController];
于 2013-03-07T15:28:53.223 回答
0

如果您的层次结构设置如下:

self.rootViewController = [[RootViewController alloc] initWithNibName:@"RootViewController"
                                                               bundle:nil];
self.navigationController = [[UINavigationController alloc] initWithRootViewController:self.rootViewController];
self.window.rootViewController = self.navigationController;
[self.window makeKeyAndVisible];

你不应该对这些东西有任何问题。您的问题可能是您正试图从您以模态方式呈现的视图控制器推送到导航控制器,而您不能这样做

于 2013-03-07T15:37:52.750 回答