模态“推”视图中的SwiftUI导航视图

时间:2019-11-20 02:58:10

标签: swift xcode swiftui ios13 ios-navigationview

我目前在 SwiftUI 中有一个模式视图,其中包含一系列指向不同视图的NavigationLink。但是,当我进入其他视图之一时,它将所有内容向下推,在视图顶部留下了一个空额头。我该如何解决? 我在下面提供了一个示例屏幕截图。

enter image description here

为进一步说明,有一个带有按钮的主视图,该按钮可打开“模态”视图。该模式包含一个带有一系列NavigationLink按钮的导航视图。当打开模态中的导航链接时,即按下视图时。

3 个答案:

答案 0 :(得分:1)

这可能是因为您从NavigationView推送到的视图也包裹在NavigationView中。

struct SettingsView: View {
    var body: some View {
        NavigationView {
           NavigationLink(destination: IAPView()) {
               Text("In App Purchase")
           }
       }
    }
}

您可能在IAPView()中有这个

struct IAPView: View {
        var body: some View {
            NavigationView { <-- this is causing it
               // your buttons here
           }
        }
    }

答案 1 :(得分:1)

视图中仍具有默认导航栏空间。您需要同时添加这两个视图修饰符。

.navigationBarTitle("")
.navigationBarHidden(true)

答案 2 :(得分:0)

您的导航栏很大,请尝试将navigationBar displayMode设置为.inline

.navigationBarTitle(Text(""), displayMode: .inline)