设置iOS导航背景颜色无法正常工作

Lei*_*ley 0 ios swift

我有一个非常具体的问题。当我将背景设置为barTintColor蓝色时,它太亮了。我似乎没有做任何事情都能做到100%准确。

因此,我更改了代码,将导航栏背景设置为100%黑色。使用OS X应用程序SIP分析颜色,或者也可以仅将视图设置为黑色,很明显颜色是深灰色,而不是黑色。

是什么使色调变色?就目前而言,我需要的蓝色和导航栏显示的内容并不相同。

    navigationController?.navigationBar.setBackgroundImage(UIImage.imageFromColor(UIColor.black), for: .default)
    navigationController?.navigationBar.shadowImage = UIImage()

    navigationController?.navigationBar.barStyle = .blackOpaque
    navigationController?.navigationBar.isOpaque = true
    navigationController?.navigationBar.barTintColor = UIColor.black
Run Code Online (Sandbox Code Playgroud)

同样在一个空白项目中,同样的问题。

Mar*_*rný 5

关键是设置isTranslucentfalse

let navigationBar = navigationController?.navigationBar
navigationBar?.barTintColor = .black
navigationBar?.isTranslucent = false
Run Code Online (Sandbox Code Playgroud)

  • 废话,谢谢。这是半透明的设置。从字面上爬遍SO试图找到这个答案。做得好。 (2认同)