如何在 SwiftUI 中隐藏 NavigationView Bar

Posted

技术标签:

【中文标题】如何在 SwiftUI 中隐藏 NavigationView Bar【英文标题】:How to hide NavigationView Bar in SwiftUI 【发布时间】:2019-12-10 02:35:11 【问题描述】:

我无法隐藏NavigationView 酒吧。我尝试了两种变体:

代码 1:

  public var body: some View 
    NavigationView 
      MasterView()
        .navigationBarHidden(true)
    
  

代码 2:

  public var body: some View 
    NavigationView 
      MasterView()
    
      .navigationBarHidden(true)
  

有人知道如何解决吗?

【问题讨论】:

【参考方案1】:

似乎解决方案可能是添加标题或从安全区域中删除空间。

问题:

解决方案 1:

.navigationBarHidden(true)
.navigationBarTitle(Text("Home"))

解决方案 2(这似乎是最好的):

.navigationBarHidden(true)
.navigationBarTitle(Text("Home"))
.edgesIgnoringSafeArea([.top, .bottom])

【讨论】:

很奇怪,我们需要设置一个标题来隐藏它...但是可以,谢谢。 对我来说,只需添加 edgesIgnoringSafeArea 它是否适用于设备旋转更改。如果我旋转 p > l > p 然后出现空间,我认为它与几何阅读器 + 导航视图有关 只有 .edgesIgnoringSafeArea([.top, .bottom]) 为我工作 ios 14 中,我只需要使用 .navigationBarHidden(true) 来完成这项工作。

以上是关于如何在 SwiftUI 中隐藏 NavigationView Bar的主要内容,如果未能解决你的问题,请参考以下文章