簡體   English   中英

UINavigationBar tintColor 行為不端

[英]UINavigationBar tintColor is misbehaving

設置 UINavigationBar tintColor 時出現問題。

這是行為不端

我正在使用 xcode 11.3.1、swift 5、iOS 13.3

*我的課

override func viewDidLoad() {
    super.viewDidLoad()
    // Do any additional setup after loading the view.
    self.title = "test"
}

override func viewWillAppear(_ animated: Bool) {
    super.viewWillAppear(animated)
    self.navigationController?.navigationBar.tintColor = #colorLiteral(red: 0.9708816409, green: 0.4246639013, blue: 0.3480253518, alpha: 1)
}

*結果

  1. 機https://imgur.com/sONr4vq

  2. 模擬器https://imgur.com/vs5lhgR

我想像標題一樣設置后退按鈕顏色

我只在真實設備上得到錯誤

請幫我

謝謝

設置后退按鈕並隱藏“后退”:

let backItem = UIBarButtonItem()
        backItem.tintColor = #colorLiteral(red: 0.9708816409, green: 0.4246639013, blue: 0.3480253518, alpha: 1)
        navigationItem.backBarButtonItem = backItem

在推送新代碼之前,您應該將此代碼添加到ViewController

您是否嘗試使用UIColor而不是#colorLiteral

喜歡


self.navigationController?.navigationBar.tintColor = UIColor(red: 0.9708816409, green: 0.4246639013, blue: 0.3480253518, alpha: 1)

//or

self.navigationController?.navigationBar.tintColor = UIColor(displayP3Red: 0.9708816409, green: 0.4246639013, blue: 0.3480253518, alpha: 1)


編輯:由於上述方法對您不起作用,您嘗試過嗎?

self.navigationController?.navigationBar.tintColor = self.navigationController?.navigationItem.titleView?.backgroundColor

考慮到您想要的只是讓按鈕和標題都具有相同的顏色,對嗎?

嘗試訪問navigationController.navigationBar而不是navigationController.view

    self.navigationController?.navigationBar.tintColor = #colorLiteral(red: 0.9708816409, green: 0.4246639013, blue: 0.3480253518, alpha: 1)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM