Ios SwiftUI是否有内置的、基于堆栈的导航器,不需要列表布局?

Ios SwiftUI是否有内置的、基于堆栈的导航器,不需要列表布局?,ios,swift,swiftui,Ios,Swift,Swiftui,我想要一种在SwiftUI中使用基于堆栈的导航的方法。每当我试图查找如何执行此操作时,我都会获得有关NavigationView的信息。但是,它看起来像是用来显示一个列表,当点击该列表时,每个条目都会导航到一个页面。有没有一种方法可以像NavigationView那样使用基于堆栈的导航,而不必遵循列表结构?因此,NavigationView用于启用对其他视图的导航。这可以用于任何类型的视图。以下示例将显示两个屏幕:ContentView和DetailView struct ContentView

我想要一种在SwiftUI中使用基于堆栈的导航的方法。每当我试图查找如何执行此操作时,我都会获得有关
NavigationView
的信息。但是,它看起来像是用来显示一个列表,当点击该列表时,每个条目都会导航到一个页面。有没有一种方法可以像
NavigationView
那样使用基于堆栈的导航,而不必遵循列表结构?

因此,NavigationView用于启用对其他视图的导航。这可以用于任何类型的视图。以下示例将显示两个屏幕:ContentView和DetailView

struct ContentView: View {
    var body: some View {
        NavigationView {
            VStack {
                Text("Main View")
                NavigationLink("Go to Detail", destination: DetailView())
            }
            .navigationBarTitle("Content View")
        }
    }
}

struct DetailView: View {
    var body: some View {
        Text("Detail body")
            .navigationBarTitle("Detail")
    }
}
如果按“转到详细信息”导航链接,则SwiftUI会将
目的地
视图推到屏幕上。按下详细视图上的后退按钮将弹出当前视图并返回到
内容视图
。您可以使用一些修改器使用标题和按钮修改
导航视图
,但请注意,
.navigationBarTitle()
修改器必须在
导航视图
的内部使用,而不是外部


总之,NavigationView可以与任何类型的视图一起使用,并且不需要列表。

当我在iPad上预览时,如果不需要列表,它看起来一点也不像我期望的那样。有没有一种方法可以禁用由
NavigationView
自动生成的边栏内容,并让它像在手机上一样进行渲染?是的,您需要指定导航视图样式。使用
NavigationView
上的
.navigationViewStyle(StackNavigationViewStyle())
修改器,它将仅呈现ContentView,然后在按下按钮时全屏按下DetailView。谢谢!这就是我一直在寻找的,我不知道为什么这么难找到。