同时设置导航控制器的标题(颜色/字体)(奇怪的行为)

时间:2015-02-22 23:44:32

标签: ios swift ios8 uinavigationbar

当我试图在app委托中自定义UINavigation控制器的外观时,我得到了一些奇怪的行为。

UINavigationBar.appearance().titleTextAttributes = [NSFontAttributeName: UIFont(name: "Avenir Next", size: 20)!]

UINavigationBar.appearance().titleTextAttributes = [NSForegroundColorAttributeName: UIColor(red: 93/255, green: 173/255, blue: 173/255, alpha: 1)]

每当我首先设置颜色时,字体都不会改变,当我首先设置字体时,颜色和字体不会改变。然而,如果我自己喜欢它,那么它就会改变......我似乎无法同时做到这两点。还有其他方式我应该这样做。

2 个答案:

答案 0 :(得分:2)

通过做两次你撤消第一个。你需要像这样做......

UINavigationBar.appearance().titleTextAttributes = [NSFontAttributeName: UIFont(name: "Avenir Next", size: 20)!, NSForegroundColorAttributeName: UIColor(red: 93/255, green: 173/255, blue: 173/255, alpha: 1)]

答案 1 :(得分:1)

你没有同时做这两件事,你正在做一件事,然后用第二张替换

i=1;后跟i=2;确实没有什么不同。

定义:

@property(nonatomic, copy) NSDictionary *titleTextAttributes

您需要将所有属性添加到NSDictionary并设置titleTextAttributes一次。