如何更改导航栏标题颜色?

80

我整天都在想如何改变导航栏标题颜色,但是效果不理想。这是我的代码:

var user: User? {
    didSet {
        navigationItem.title = user?.name

         observeMessages()
    }
}

我使用didSet来在导航栏标题上显示标题。

11个回答

2

Swift 4

创建项目并使用ViewController进行测试,易于使用

import UIKit

class ProfileViewController: UIViewController {
   override func viewDidLoad() {
        super.viewDidLoad()
        configureNavigationBar()
   }
   
   func configureNavigationBar() {
       // change title
       navigationItem.title = "Profile"
       navigationController?.navigationBar.prefersLargeTitles = true

       // change title color
       let textChangeColor = [NSAttributedString.Key.foregroundColor: UIColor.black]
       navigationController?.navigationBar.titleTextAttributes = textChangeColor
       navigationController?.navigationBar.largeTitleTextAttributes = textChangeColor

       // configure right bar button
       navigationItem.rightBarButtonItem?.tintColor = .white
       navigationItem.rightBarButtonItem = UIBarButtonItem(image: #imageLiteral(resourceName: "arrow_right").withRenderingMode(.alwaysOriginal), style: .plain, target: self, action: #selector(handleDismiss))
       navigationItem.rightBarButtonItem?.tintColor = .white
   }
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接