Ios 如何防止父viewController继承子viewController的透明导航栏属性?

Ios 如何防止父viewController继承子viewController的透明导航栏属性?,ios,swift3,uinavigationbar,transparency,xcode8,Ios,Swift3,Uinavigationbar,Transparency,Xcode8,我可以使用以下方法将detailedViewController的navigationBar设置为透明: self.navigationController?.navigationBar.setBackgroundImage(UIImage(), for: .default) self.navigationController?.navigationBar.shadowImage = UIImage() self.navigationController?.navigationBar.isTra

我可以使用以下方法将
detailedViewController
navigationBar
设置为透明:

self.navigationController?.navigationBar.setBackgroundImage(UIImage(), for: .default)
self.navigationController?.navigationBar.shadowImage = UIImage()
self.navigationController?.navigationBar.isTranslucent = true
这个很好用。但是,当我通过一个序列将
detailedViewController
链接到初始
firstViewController
时,父
firstViewController
和子
detailedViewController
都具有透明的
navigationBar
属性


问题:如何防止父视图控制器继承子视图控制器的透明属性?

你真的希望导航栏是透明的还是只想隐藏它?如果你希望整个应用程序都有这个属性,那么设置UINavigationBar appearance我不认为它与继承有关,
firstViewController
detailedViewController
只是共享它们在中显示的
navigationController
,因此从
detailedViewController
中对其所做的更改也会影响其父控制器的显示。考虑样式和样式> <代码>导航栏>代码>使用<代码> UnavigigPosialMeCuultAdvest.WaveStudio:WelDeS:<代码>或各自的控制器<代码> VIEWS将出现:如果您想从CODECISRZIS中进行,我尝试为
detailedViewController
设置
navigationBar
透明度属性,该属性位于
ViewWillDisplay
下,但是它仍然会影响父级
firstViewController
。我将给
UINavigationControllerDelegate.navigationController:willShow:
一个快照,看看这是否有效…查看此帖子可能会有所帮助