透明的viewcontroller仍然显示出高清晰度的图像

时间:2018-08-02 05:09:24

标签: swift uinavigationbar

团队,我将导航栏设置为透明的,但在过渡过程中仍收到“鬼影”图像。我是否缺少需要设置为清除的属性?

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

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

在转换之前: BeforeImage

在过渡期间: DuringImage

转换后: AfterImage

1 个答案:

答案 0 :(得分:0)

对于我的应用程序,我是在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
     }

我的那里没有幽灵闪光,所以也许这会有所帮助。看起来您只需要添加backgroundColor。试试看,让我知道。