Ios UINavigationController与ViewController颜色相同

Ios UINavigationController与ViewController颜色相同,ios,uinavigationcontroller,uinavigationbar,Ios,Uinavigationcontroller,Uinavigationbar,在Swift 4.0中,我尝试为UINavigationBar应用与我的viewController颜色相同的颜色,简而言之,我想要透明的Navigationbar,我尝试了所有选项,但仍然无法为Navigationbar和viewController应用相同的颜色。(见附图) 我知道如果我使用 self.navigationBar.setBackgroundImage(UIImage(), for: .default) isTranslucent = false 它将使背景透明,但当它滚

在Swift 4.0中,我尝试为UINavigationBar应用与我的viewController颜色相同的颜色,简而言之,我想要透明的Navigationbar,我尝试了所有选项,但仍然无法为Navigationbar和viewController应用相同的颜色。(见附图)

我知道如果我使用

self.navigationBar.setBackgroundImage(UIImage(), for: .default)
isTranslucent = false 
它将使背景透明,但当它滚动到顶部时,tableview列表可能会在navigationbar中可见,这是我不想要的

还有其他选择吗?其中,当tableview滚动到顶部时,导航栏应该是透明的,而tablview列表在导航栏中不应该可见


感谢您的帮助。

在通过
UINavigationBar
应用一些效果后,您必须以与所需颜色相同的方式设置颜色,您可以通过使用根据原始颜色计算的新值更改
UINavigationBar
背景颜色来实现此目的

您可以使用以下链接获取该值:

通过这样做,您可以将
半透明属性设置为true,并获得所需的相同结果

self.navigationBar.setBackgroundImage(UIImage(), for: .default)
isTranslucent = false