1

我试图在 iOS 7 中为我的 appdelegate 中的所有导航栏设置色调。这在以前一直有效,但由于某种原因,现在什么都没有改变。在我的 appDelegate 的 didFinishLaunching 部分中,我有:

[[UINavigationBar appearance] setTintColor:toolbarcolor];

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

4

4 回答 4

5

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

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

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

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

于 2013-10-22T19:09:26.477 回答
3

斯威夫特版本:

    UINavigationBar.appearance().barTintColor = colorBar
于 2015-09-10T12:50:43.130 回答
2

如果要为整个应用程序设置条形颜色,请在 AppDelegate.m 的“didFinishLaunchingWithOptions”方法中编写

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

以下是输出:

在此处输入图像描述

于 2014-11-08T07:02:42.563 回答
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)

在此处输入图像描述

于 2016-10-04T17:54:31.320 回答