我正在使用RootViewController中的以下代码加载Modal视图控制器:
[self.navigationController presentModalViewController:accountViewController animated:YES];
在accountViewController xib文件中,我设置了一个导航栏。我的MainWindow.xib和RootViewController.xib也正确设置了导航栏。此外,我的app委托已正确设置导航控制器(我假设):
UINavigationController *aNavigationController = [[UINavigationController alloc] initWithRootViewController:rootViewController];
self.navigationController = aNavigationController;
[window addSubview:navigationController.view];
然而,当我加载我的accountViewController时,UINavigationBar无处可见。是不可能在模态视图中显示UINavigationBar?我打算用它来隐藏后退按钮,并添加一个右键......
答案 0 :(得分:6)
sha的回答是正确的,但是我给出了自己的答案,用一个代码示例对其进行了扩展,以便明确。
您可能需要以下内容:
- (void)showAccountViewController
{
AccountViewController* accountViewController = [[AccountViewController alloc] initWithNibName:@"AccountView" bundle:nil];
...
// Initialize properties of accountViewController
...
UINavigationController* navController = [[UINavigationController alloc] initWithRootViewController:accountViewController];
[self.navigationController presentModalViewController:navController animated:YES];
[navController release];
[accountViewController release];
}
答案 1 :(得分:1)
你需要推送不是viewController而是内部有viewController的navigationController。
答案 2 :(得分:0)
您还可以在“属性”检查器中将演示文稿样式设置为“当前上下文”#34;。模态视图不会涵盖导航栏。