gpt4 book ai didi

ios - 为什么 NavigationView 必须是顶级 View ?

转载 作者:行者123 更新时间:2023-12-01 19:32:12 26 4
gpt4 key购买 nike

我是 iOS 和 SwiftUI 的新手 - 为什么 NavigationView甚至存在?当我们需要链接某个地方时,为什么不只有 NavigationLinks 呢?

为什么NavigationView必须是顶级 View ?从语义上讲,它只是没有意义,因为顶级 View 应该是 VStack , Zstack ETC

目前:

struct ContentView : View {
var body: some View {
NavigationView {
VStack {
Text("Hello World")
NavigationLink(destination: DetailView()) {
Text("Do Something")
}
}
}
}
}

应该:
struct ContentView : View {
var body: some View {
VStack {
Text("Hello World")
NavigationView {
NavigationLink(destination: DetailView()) {
Text("Do Something")
}
}
}
}
}

任何的想法?

最佳答案

SwiftUI 几乎免费为您提供一大堆便利。

其中之一是名为 NavigationView 的界面构建 block 。 .

该界面构建 block 具有一些方便的特性和功能,例如为您提供自动导航界面(例如您通过 NavigationLink 关注的 View 的导航栏中的原始 View 的后退按钮等)。

如果不是您的 View 的顶级,那么大多数这些便利根本就没有意义。
NavigationView有什么你想要的吗?在较低的水平?我无法想象是什么,但我怀疑还有另一个 SwiftUI 构建 block 可以实现它,它是专门为上下文制作的。

关于ios - 为什么 NavigationView 必须是顶级 View ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61914859/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com