iPhone:如何以编程方式将导航顶栏样式设置为"黑色导航栏"?

Get*_*tsy 6 iphone

我有一个只有TableView的Navigation项目.默认情况下,我可以在运行应用程序时看到导航栏.我想将导航栏样式更改为相同,如果我们在IB中看到有一个名为"顶栏"的"黑色导航栏"样式(显示黑色导航顶栏,但会出现某种灰色阴影).我现在想要在我的导航栏中使用相同的内容,而不是任何其他颜色或样式.我如何解决它?

注意:1.我使用了"self.navigationController.navigationBar.barStyle = UIBarStyleBlack;" ,但它显示完全黑色的导航栏.我不想那样,我想要一种黑色的灰色阴影,类似于"顶栏",它有"黑色导航栏".

  1. 我尝试了上面的一些色彩添加,如"self.navigationController.navigationBar.tintColor = [UIColor grayColor];" 但我在导航栏中观察到相同的黑色表演.

  2. 我试过"navigationBar.barStyle = UIBarStyleBlackTranslucent;" 但它不适合并正确显示状态栏.相反,它重叠(隐藏)半黑色与状态栏和半黑色显示外.

有人可以教我吗?

谢谢.

Gon*_*nen 10

正如UIBarStyleBlackTranslucent在iOS 3.0中弃用的那样,
最好使用这两行:

self.navigationController.navigationBar.barStyle = UIBarStyleBlack;  // optional
self.navigationController.navigationBar.translucent = YES;
Run Code Online (Sandbox Code Playgroud)

这也允许您使用与黑色不同的颜色.


cob*_*bal 7

navigationBar.barStyle = UIBarStyleBlackTranslucent;
Run Code Online (Sandbox Code Playgroud)

(docs)


MGM*_*MGM 6

完整答案......

self.navigationController.navigationBar.barStyle = UIBarStyleBlackTranslucent;
Run Code Online (Sandbox Code Playgroud)