iPhone:UITabBarController内的半透明导航栏

时间:2011-07-22 03:03:29

标签: iphone ios uitabbarcontroller uinavigationbar

在这里。 我在UITabBarController中有一个UINavigationController。 有没有办法设置导航栏半透明? 我以编程方式尝试将其设置为:

navigationController.navigationBar.translucent = YES;

但没有任何改变。 我甚至试图记录半透明值,它实际上是YES但是条形图仍然是完全不透明的。 导航栏后面的视图覆盖全屏,我甚至可以在(半透明)状态栏下看到它。我真的不明白。 只有当导航控制器位于标签栏控制器内时,才会发生这一切。

编辑: 你猜怎么着?是xcode搞砸了我的nib文件...... 我从头开始重新创建了xib,它按预期工作。 不管怎样,谢谢

2 个答案:

答案 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 。希望能帮助每个面临同样问题的人。