在这里。 我在UITabBarController中有一个UINavigationController。 有没有办法设置导航栏半透明? 我以编程方式尝试将其设置为:
navigationController.navigationBar.translucent = YES;
但没有任何改变。 我甚至试图记录半透明值,它实际上是YES但是条形图仍然是完全不透明的。 导航栏后面的视图覆盖全屏,我甚至可以在(半透明)状态栏下看到它。我真的不明白。 只有当导航控制器位于标签栏控制器内时,才会发生这一切。
编辑: 你猜怎么着?是xcode搞砸了我的nib文件...... 我从头开始重新创建了xib,它按预期工作。 不管怎样,谢谢
答案 0 :(得分:6)
您正在设置错误的属性:
self.navigationController.navigationBar.barStyle = UIBarStyleBlackTranslucent;
答案 1 :(得分:1)
我也在尝试使用XCode 4.2.1更改我的基于UITabBarController的应用程序的导航栏样式。在这种情况下,Zebs给出的代码是错误的。如果您正在使用您自己创建的navigationController,那么它可以,但事实是,由UITabBarController创建的navigationController是由UITabBarController创建的,因此正确的代码是:
self.moreNavigationController.navigationBar.barStyle = UIBarStyleBlack;
注意我们使用 moreNavigationController 而不是 navigationController 。希望能帮助每个面临同样问题的人。