Swift 4:导航栏在下一页看起来不同

时间:2017-11-27 15:16:10

标签: ios swift uinavigationcontroller uinavigationbar uibarmetrics

我刚刚使用以下代码删除了导航栏阴影线:

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

当我使用此代码并尝试打开属于同一导航控制器的另一个页面时,其导航栏看起来不同。我正在尝试设置相同的导航栏背景颜色和色调颜色,但它不起作用。但是,当我删除这些代码时,我使用的所有页面都正常工作。我该如何解决这个问题?

截图:

MainViewController

SecondViewController

1 个答案:

答案 0 :(得分:0)

您的导航栏看起来是半透明的,但您的视图控制器不会在其后面延伸,因此您需要默认为黑色的窗口。

无论

  1. 选中此框以在界面构建器
  2. 中的顶部栏下方展开VC
  3. 将UIApplication.shared.keyWindow?。backgroundColor更改为.white
  4. 使导航栏不透明