在iOS 7中设置导航栏色调颜色

时间:2013-10-22 14:51:25

标签: ios7 uinavigationbar tintcolor

我试图从iOS 7中的appdelegate设置所有导航栏的色调。这在以前总是有效,但由于某些原因,现在没有任何变化。在appDelegate的didFinishLaunching中,我有:

[[UINavigationBar appearance] setTintColor:toolbarcolor];

但是,栏保持默认的半透明选项。

3 个答案:

答案 0 :(得分:5)

您可以使用barTintColor属性设置条形色调颜色:

[[UINavigationBar appearance] setBarTintColor:[UIColor purpleColor]];

如果您还不希望导航栏为半透明,则可以将translucent属性设置为NO。

不幸的是,半透明属性在UINavigationBar外观代理上不可用,因此您必须单独设置此属性(在故事板,.xib或控制器中的viewDidLoad之类)。

答案 1 :(得分:2)

如果要为整个应用程序设置条形色调,请使用AppDelegate.m的“didFinishLaunchingWithOptions”方法

[[UINavigationBar appearance] setBarTintColor:[UIColor orangeColor]];

输出以下内容:

enter image description here

答案 2 :(得分:1)

在Swift 3.0中

 let navigationBarAppearnce = UINavigationBar.appearance()

导航栏的tintColor会影响后方指示图像,按钮标题和按钮图像的颜色:

navigationBarAppearnce.tintColor = UIColor.white

barTintColor属性会影响条形图本身的颜色:

navigationBarAppearnce.barTintColor = UIColor(red: 0.180, green: 0.459, blue: 0.733, alpha: 1.00)

enter image description here