iOS导航栏的标题颜色默认是白色。有没有办法换一种颜色?

我知道navigationItem。使用图像的titleView方法。由于我的设计技能有限,我没有得到标准的光泽,我更喜欢改变文字的颜色。

任何见解都将非常感激。


当前回答

要设置标题的字体大小,我使用了以下条件..也许对任何人都有帮助

if ([currentTitle length]>24) msize = 10.0f;
    else if ([currentTitle length]>16) msize = 14.0f;
    else if ([currentTitle length]>12) msize = 18.0f;

其他回答

在iOS 5中,你可以这样改变navigationBar标题的颜色:

navigationController.navigationBar.titleTextAttributes = @{NSForegroundColorAttributeName: [UIColor yellowColor]};

方法一,设置为IB:

方法二,一行代码:

navigationController?.navigationBar.barTintColor = UIColor.blackColor()

为了保持问题的最新,我将添加Alex R. R.解决方案,但在Swift中:

self.navigationController.navigationBar.barTintColor = .blueColor()
self.navigationController.navigationBar.tintColor = .whiteColor()
self.navigationController.navigationBar.titleTextAttributes = [
    NSForegroundColorAttributeName : UIColor.whiteColor()
]

结果是:

Swift 4和4.2版本:

 self.navigationController.navigationBar.titleTextAttributes = [NSAttributedString.Key.foregroundColor: UIColor.green]

我已经自定义了导航栏的背景图像和左键项目,灰色标题不适合背景。然后我使用:

[self.navigationBar setTintColor:[UIColor darkGrayColor]];

将淡色改为灰色。现在标题是白色的!这就是我想要的。

也希望能有所帮助:)