是否可以在加载后更改UITabBarController文本颜色?

时间:2017-02-22 05:12:16

标签: ios swift uitabbarcontroller

我想根据用户操作加载UITabBarControllers文字颜色。

我可以调用它,它会在启动时正确更改字体和颜色。

 let appearance = UITabBarItem.appearance()
 let attributes: [String: AnyObject] = [NSFontAttributeName:UIFont(name: "American Typewriter", size: 12)!, NSForegroundColorAttributeName: UIColor.green]
 appearance.setTitleTextAttributes(attributes, for: .normal)

当我尝试在应用完全启动后随时调用此功能时,没有任何反应。

这是可能的,还是在发布时你可以做的一次性事情?

1 个答案:

答案 0 :(得分:0)

看起来如果我遍历所有项目并手动设置它就可以了。然后我需要重新设置所选项目的颜色。

还不确定为什么其他方式不起作用?

for myItem in (tabBar.items)! {
    myItem.setTitleTextAttributes([NSForegroundColorAttributeName: UIColor.red], for: .normal)
}

tabBar.selectedItem?.setTitleTextAttributes([NSForegroundColorAttributeName: UIColor.green], for: .normal)