Ios 具有不同背景颜色的导航栏和视图
我有一个UIView和UINavigationBar 我正在构建这段代码来设置视图和导航栏的背景色 这就是代码:Ios 具有不同背景颜色的导航栏和视图,ios,xcode,swift3,uinavigationbar,Ios,Xcode,Swift3,Uinavigationbar,我有一个UIView和UINavigationBar 我正在构建这段代码来设置视图和导航栏的背景色 这就是代码: override func viewDidLoad(){ super.viewDidLoad() self.navigationController?.navigationBar.barTintColor = getColor(red: 41, green: 151, blue: 255) self.view.backgroundCo
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))
}
如您所见,颜色相同,但输出视图如下所示:
正如您所看到的,导航栏有不同的颜色,我不知道为什么。我认为您需要将导航栏的
isTranslucent
属性设置为false
这可能是因为您的导航栏是半透明的,请尝试将isTranslucent
设置为false。显然,这是因为导航栏isTranslucent
,以编程方式将其设置为false
,或者如果您使用的是故事板,则可以通过从半透明中删除复选框(如所附照片)来完成
试试这个
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)