UINavigationBar拒绝在Modal View Controller中显示

moo*_*ots 3 iphone uinavigationbar modalviewcontroller

我在RootViewController中使用以下代码加载Modal视图控制器:

[self.navigationController presentModalViewController:accountViewController animated:YES];
Run Code Online (Sandbox Code Playgroud)

在accountViewController xib文件中,我设置了一个导航栏.我的MainWindow.xib和RootViewController.xib也正确设置了导航栏.另外,我的app委托已正确设置导航控制器(我假设):

UINavigationController *aNavigationController = [[UINavigationController alloc] initWithRootViewController:rootViewController];
self.navigationController = aNavigationController;

[window addSubview:navigationController.view];
Run Code Online (Sandbox Code Playgroud)

但是,当我加载我的accountViewController时,UINavigationBar无处可见.是不可能在模态视图中显示UINavigationBar?我打算用它来隐藏后退按钮,并添加一个右键......

Sha*_*rog 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];
}
Run Code Online (Sandbox Code Playgroud)