问题:即使我在主视图上设置 .toolbar(.hidden, for: navBar) ,当弹出到 rootViewController 时,我也会得到一个奇怪的 navBar 。
这是我现在正在尝试修复它的代码
import SwiftUI
struct DemoPop: View {
@State private var path = NavigationPath()
var body: some View {
VStack {
NavigationStack(path: $path) {
List {
Section("List One") {
NavigationLink("Navigate to View 1", value: "View 1")
NavigationLink("Navigate to View 2", value: "View 2")
}
}
.navigationDestination(for: String.self) { textDesc in
VStack {
Text(textDesc).padding()
Button("Navigate to View 3") {
path.append("View 3")
}.padding()
Button("Pop to Root View") {
path.removeLast(path.count)
}.padding()
}
}
.navigationTitle("Test Pop To Root")
}
}
}
}
struct DemoPop_Previews: PreviewProvider {
static var previews: some View {
DemoPop()
}
}
我尝试了几种不同的方法,比如构建一个路由器类并通过它来摆脱这个问题,但我还没有成功,我尝试的最后一件事只是从 stacked 中获取了一些简单、可读的代码来解决问题。但到目前为止还没有运气。