XCode11 beta3, MacOS Catalina 10.15 Beta(19A501i)
我想在推入时隐藏tabBar〜任何命令都会非常有帮助,谢谢〜
struct ContentView : View {
var body: some View {
WhenNavigationViewIsRootView()
}
}
struct WhenNavigationViewIsRootView : View {
var body: some View {
NavigationView {
TabbedView{
Rectangle().foregroundColor(.green)
.tag(0).tabItem{Text("Page1")}
VStack {
List {
ForEach(0...2) { i in
NavigationLink(
destination: Text("\(i)"),
label: {Text("\(i)")})
}
}
}.tag(1).tabItem{Text("Page2")}
}
.navigationBarHidden(true)
}
}
}
答案 0 :(得分:0)
如果要在TabbedView
中隐藏导航栏,则必须在.navigationBarHidden(true)
内嵌套的视图上设置TabbedView
。但是,这还不够。无论出于何种原因,SwiftUI都要求您先设置导航栏标题,然后才能隐藏导航栏。
NavigationView {
TabbedView{
Rectangle()
.foregroundColor(.green)
.tag(0)
.tabItem{
Text("Page1")
}
.navigationBarTitle("")
.navigationBarHidden(true)
List(0...2) { i in
NavigationLink(destination: Text("\(i)")) {
Text("\(i)")
}
}
.tag(1)
.tabItem {
Text("Page2")
}
.navigationBarTitle("")
.navigationBarHidden(true)
}
}