0

当我使用导航控制器创建模式视图时,我无法将导航栏样式设置为不透明。我必须提到我正在从另一个导航控制器呈现模态视图。这是我正在谈论的代码:

UINavigationController *navController = [[UINavigationController alloc]
                                       initWithRootViewController:detailedViewController];
[navController setModalPresentationStyle: UIModalPresentationFullScreen];
[navController setModalTransitionStyle:UIModalTransitionStyleFlipHorizontal];

//also tried [navController navigationBar] setOpaque:YES]; with no luck  
navController.navigationBar.barStyle = UIBarStyleBlackOpaque; 
[self presentViewController:navController animated:YES completion:nil];

应该有一些我错过的东西而且我看不到,所以任何帮助都会很棒!

提前致谢 :)

4

2 回答 2

1

最后我解决了这个问题。这与我实际上使用了两个导航控制器以及我在原始代码中使用的第二个嵌套导航控制器的事实有关。

在这一点上,我假设我有两个选择,维护嵌套的 navController 并正确配置它,或者,我选择的那个,摆脱第二个 navController,使用主要的并将我的 customView 推送到第一个 navController。

谢谢大家的帮助!!

于 2013-10-17T18:46:09.827 回答
1

设置navigationBar.translucentNO。如果这对您不起作用,请务必致电[navController loadViews],因为在您展示它们之前他们可能不会加载它们。

于 2013-10-15T18:33:17.033 回答