UINavigationController后退按钮标题颜色

时间:2018-05-22 20:29:50

标签: swift

我正在尝试为导航控制器中嵌入的视图设置后退按钮的颜色。

我已成功更改按钮的颜色,但文字仍为灰色。

enter image description here

我在视图中实现了以下代码。

    navigationController?.navigationBar.barTintColor = UIColor(red:0.99, green:0.75, blue:0.76, alpha:1.0)
    navigationController?.navigationBar.tintColor = .white
    navigationController?.navigationBar.titleTextAttributes = [NSAttributedStringKey.foregroundColor: UIColor.white ,NSAttributedStringKey.font: UIFont.init(name: "Montserrat-Bold", size: 17)!]

2 个答案:

答案 0 :(得分:2)

您可以使用navigationItem.backBarButtonItem来访问按钮本身,如果需要,还可以将其设置为新的UIBarButtonItem。这仅设置当前视图控制器的后退按钮,因此如果要在每个视图控制器上更改它,则必须为每个页面设置它。如果有帮助的话,马克·莫伊肯斯就有一个很棒的video

答案 1 :(得分:1)

在要返回的视图控制器中,添加到viewDidLoad():

if let title = navigationController?.navigationBar.topItem?.title {
    let barItem = UIBarButtonItem(title: title, style: .plain, target: nil, action: nil)
    barItem.setTitleTextAttributes([NSAttributedStringKey.foregroundColor : UIColor.red], for: .normal)
    navigationItem.backBarButtonItem = barItem
}