【问题标题】:How to remove navigation bar colour clear in swift4?如何在swift4中清除导航栏颜色?
【发布时间】:2019-09-01 19:02:00
【问题描述】:

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

我尝试了很多代码,但没有找到解决方案。 我想要这样的导航栏:-

带有清晰的导航栏颜色。 有什么解决办法,告诉我? 谢谢!

【问题讨论】:

标签: ios swift uinavigationbar


【解决方案1】:

最好不要使用导航栏。隐藏导航控制器中的导航栏和视图控制器中的用户自定义视图以避免此问题。

【讨论】:

  • 这不是解决方案。您可以在评论中写下。
【解决方案2】:

您可以在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
}

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-05-04
    • 2018-06-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多