iOS UINavigationController将背景设置为透明后显示黑屏

iOS UINavigationController将背景设置为透明后显示黑屏,ios,swift,uinavigationcontroller,transparent,Ios,Swift,Uinavigationcontroller,Transparent,我在UINavigationController上遇到了一个非常奇怪的问题。 我试图在UINavigationController中显示不透明的UIViewController,我希望看到模糊的先前控制器内容。 我将alpha设置为UIViewControllerview: view.alpha = 0.9 然后我尝试摆脱UINavigationControllerbackground: navigationController?.view.backgroundColor = .clear

我在
UINavigationController
上遇到了一个非常奇怪的问题。 我试图在
UINavigationController
中显示不透明的
UIViewController
,我希望看到模糊的先前控制器内容。 我将alpha设置为
UIViewController
view:

view.alpha = 0.9
然后我尝试摆脱
UINavigationController
background:

navigationController?.view.backgroundColor = .clear
最初在
UINavigationController
动画过渡期间,一切看起来都很好,但动画完成后
UINavigationController
背景变为黑色。此问题仅在颜色为透明时存在


可能是其他人遇到了此问题?

如果您以模式显示导航控制器,请尝试将其modalPresentationStyle设置为。全屏显示

否,此问题与UIViewController在导航控制器内的内容定位无关。我特别要求设置navigationController背景(而不是navigationbar背景)。为此,您应该覆盖UINavigationController,并在
awakeFromNib
中设置其
视图的
backgroundColor
。这部分解决了我的问题,但我不想使用modalPresentationStyle。但我会弄明白的。非常感谢。