我有一个带有UINavigationBar的UIView。

我正在构建此代码以在View以及NavigationBar上设置背景色。

所以这是代码:

    override func viewDidLoad(){
       super.viewDidLoad()
       self.navigationController?.navigationBar.barTintColor = getColor(red: 41, green: 151, blue: 255)
       self.view.backgroundColor = getColor(red: 41, green: 151, blue: 255)
    }

func getColor(red: Int, green: Int, blue: Int) ->
   UIColor{
   return UIColor(red: CGFloat(Float(red) / 255.0),
      green CGFloat(Float(red) / 255.0),
      blue: CGFloat(Float(red) / 255.0),
      alpha: CGFloat(1.0))
}

如您所见,颜色是相同的,但是输出视图是这样的:

ios - NavigationBar和具有不同背景颜色的 View-LMLPHP

如您所见,NavBar具有不同的颜色,我不知道为什么。

最佳答案

尝试这个

self.navigationController?.navigationBar.setBackgroundImage(UIImage(), for: UIBarMetrics.default)
self.navigationController?.navigationBar.shadowImage = UIImage()
self.navigationController?.navigationBar.isTranslucent = true
self.navigationController?.view.backgroundColor = UIColor.clear

代替
self.navigationController?.navigationBar.barTintColor = getColor(red: 41, green: 151, blue: 255)

关于ios - NavigationBar和具有不同背景颜色的 View ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55028022/

10-14 20:14
查看更多