透明视图控制器仍然显示gosh图像



团队,我有一个透明的导航栏,但在转换过程中我仍然会得到一个"重影"图像。我是不是错过了一处需要清理的房产?

使视图控制器透明的代码:

self.navigationController?.navigationBar.setBackgroundImage(UIImage(), for: UIBarMetrics.default)
self.navigationController?.navigationBar.shadowImage = UIImage()
self.navigationController?.navigationBar.isTranslucent = true

这是在过渡之前:BeforeImage

过渡期间:DuringImage

过渡后:AfterImage

对于我的应用程序,我在viewWillAppear:中做到了这一点

override func viewWillAppear(_ animated: Bool) {
self.navigationController!.navigationBar.setBackgroundImage(UIImage(), for: UIBarMetrics.default)
self.navigationController?.navigationBar.shadowImage = UIImage()
self.navigationController?.navigationBar.isTranslucent = true
self.navigationController!.navigationBar.backgroundColor = UIColor.clear
}

我的没有一个小的鬼闪光,所以也许这会有所帮助。看起来你只需要添加背景颜色。试试看,让我知道。

最新更新