我在一个按钮中做了一个推送功能:
@IBAction func prodButton(sender: AnyObject) {
let storyboard = UIStoryboard(name: "Main", bundle: nil)
var secondViewController = CollectionViewController()
secondViewController = storyboard.instantiateViewControllerWithIdentifier("CollectionViewController") as! CollectionViewController
self.navigationController?.pushViewController(secondViewController, animated: true)
}
此按钮推送到secondViewController,但当我查看第二个视图控制器的导航栏时,我注意到它已自动设置了一个后退按钮。问题是这个后退按钮的颜色是浅蓝色,它不符合我的设计。我尝试在viewDidAppear
中更改它 self.navigationItem.leftBarButtonItem?.tintColor = UIColor.redColor()
以及条形颜色:
self.navigationController?.navigationBar.barTintColor = UIColor(red: 65, green: 61, blue: 116, alpha: 1.0)
但没有任何改变。
如果有人帮助我,我真的很感激。
提前致谢。
答案 0 :(得分:0)
尝试将颜色设置一次,在以下任何地方都将使用相同的颜色:
let navBar = UINavigationBar.appearance()
navBar.tintColor = UIColor.redColor()
您应该将此代码放在AppDelegate中。如果您使用它,也可以在Storyboard中设置barTint。
答案 1 :(得分:0)
使用
//Func Alter color navigation bar
func AlteraCorNavigationBar(Navigation:UINavigationController){
Navigation.navigationBar.tintColor = CorTextoNavigationBar()
//Navigation.navigationBar.barTintColor = CorPredominante()
Navigation.navigationBar.titleTextAttributes = [NSForegroundColorAttributeName : CorTextoNavigationBar(), NSFontAttributeName : UIFont(name: "ArialHebrew-Light", size: 22)!]
}
//func CorPredominante()->UIColor{
//return UIColor.redColor()
//(rgba: "#ecf0f1")
// YOU CAN LIBRARY COLOR RGBA [HERE][1] AND USE UIColor(rgba: "#b6011a")
//}
func CorTextoNavigationBar()->UIColor{
return UIColor(red: 65, green: 61, blue: 116, alpha: 1.0)
}
用于在视图控制器中调用:
class NewViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
AlteraCorNavigationBar(navigationController)
}
}
答案 2 :(得分:0)
我发现了错误。 颜色应分为255:
UINavigationBar.appearance().tintColor = UIColor(red: 149.0 / 255.0, green: 148.0 / 255.0, blue: 192.0 / 255.0, alpha: 0.5)
UINavigationBar.appearance().barTintColor = UIColor(red: 65.0 / 255.0, green: 61.0 / 255.0, blue: 116.0 / 255.0, alpha: 1.0)
谢谢大家的帮助;)