如何在swift4中清除导航栏颜色?

Suk*_*ukh 1 uinavigationbar ios swift

我想清除导航栏的颜色。在我的 ViewController 中有一个背景图像,当我删除导航 barTintColor、navigationController.view.background 和导航背景图像的颜色时,模拟器会显示我:- 在此处输入图片说明

我一直在尝试很多代码,但没有找到解决方案。我想要这样的导航栏:- 在此处输入图片说明

带有清晰的导航栏颜色。有什么解决办法,让我知道吗?谢谢!

Raj*_*r R 6

您可以按如下方式使导航栏透明viewWillAppear并删除透明度viewWillDisappear

override func viewWillAppear(_ animated: Bool) {
    super.viewWillAppear(animated)
    self.navigationController?.navigationBar.setBackgroundImage(UIImage(), for: .default)
    self.navigationController?.navigationBar.shadowImage = UIImage()
    self.navigationController?.navigationBar.isTranslucent = true
}
override func viewWillDisappear(_ animated: Bool) {
    super.viewWillDisappear(animated)
    self.navigationController?.navigationBar.setBackgroundImage(nil, for: .default)
    self.navigationController?.navigationBar.shadowImage = nil
    self.navigationController?.navigationBar.isTranslucent = false
}
Run Code Online (Sandbox Code Playgroud)

背景图像和后退按钮将可见

在此处输入图片说明