在 SwiftUI 中推送到另一个屏幕时如何隐藏 NavigationView
How to hide NavigationView when push to another Screen in SwiftUI
我有 2 个屏幕 CourseList 和第二个 CourseDetail。我可以通过代码在 First/Initial 屏幕上隐藏 navigationView。
var body: some View {
NavigationView {
List (networkManager.courses) { course in
NavigationLink(destination: CourseDetails(course: course)) {
CourseRow(course: course)
}
.padding(EdgeInsets(top: 0, leading: -8, bottom: 0, trailing: 0))
}
.navigationBarTitle(Text("Courses"), displayMode: .inline)
.navigationBarHidden(true) //It Hides NavigationView
}
}
在第二屏幕课程详细信息中,我想隐藏导航栏。
在您的 CourseDetails 视图中添加:
.navigationBarTitle("")
.navigationBarHidden(true)
有时您需要先设置标题才能隐藏导航栏。
你试试这个代码:
struct SecondScreen: View {
var body: some View {
VStack {
BottomView()
.offset(y: 90)
}
.navigationBarHidden(true)
.navigationBarTitle("")
}}
我有 2 个屏幕 CourseList 和第二个 CourseDetail。我可以通过代码在 First/Initial 屏幕上隐藏 navigationView。
var body: some View {
NavigationView {
List (networkManager.courses) { course in
NavigationLink(destination: CourseDetails(course: course)) {
CourseRow(course: course)
}
.padding(EdgeInsets(top: 0, leading: -8, bottom: 0, trailing: 0))
}
.navigationBarTitle(Text("Courses"), displayMode: .inline)
.navigationBarHidden(true) //It Hides NavigationView
}
}
在第二屏幕课程详细信息中,我想隐藏导航栏。
在您的 CourseDetails 视图中添加:
.navigationBarTitle("")
.navigationBarHidden(true)
有时您需要先设置标题才能隐藏导航栏。
你试试这个代码:
struct SecondScreen: View {
var body: some View {
VStack {
BottomView()
.offset(y: 90)
}
.navigationBarHidden(true)
.navigationBarTitle("")
}}