我想在navigationController(_:willShow:animated :)過程中使用barTintColor在導航堆棧上推視圖控制器時更改導航欄的顏色。iOS - 按下按鈕時的導航欄顏色轉換
下面是代碼:
func navigationController(_ navigationController: UINavigationController, willShow viewController: UIViewController, animated: Bool) {
if viewController is ViewerViewController {
navigationBar.barTintColor = UIColor(custom: .white)
navigationBar.tintColor = UIColor(custom: .black)
} else if viewController is FeedViewController {
navigationBar.barTintColor = UIColor(custom: .blue)
navigationBar.tintColor = UIColor(custom: .white)
}
}
一切精美的作品,當我推視圖控制器,當我使用刷卡回退姿勢(色彩過渡平滑以兩種方式)。
然而,當我按下後退按鈕,顏色起初不改變,導航過渡完成,然後顏色與沒有動畫改變。
有沒有人遇到/解決過這個問題?任何線索將不勝感激。
,如果你寫的代碼,然後它會很容易爲我們確定它爲什麼會發生這種 –