Кажется, что я не могу выбрать, на каких страницах я хочу скрыть панель навигации в быстром пользовательском интерфейсе.
У меня есть следующие экраны:
Main
struct Main: View {
var body: some View {
NavigationView {
Home()
}
}
}
Дом
struct Home: View {
var body: some View {
NavigationLink(destination: Details()) {
Text("Go Next")
}
// I expect the navigation bar to show up here, and it does
.navigationBarTitle("Home")
.navigationBarHidden(false)
}
}
Подробности
struct Details: View {
@Environment(\.presentationMode) var mode: Binding<PresentationMode>
var body: some View {
Button(action: { self.mode.wrappedValue.dismiss() }) {
Text("Go Back")
}
// I expect the navigation bar to be hidden here
// At first, it is hidden. Then, after a second, it pops up
// with the title "Details"
.navigationBarTitle("Details")
.navigationBarHidden(true)
}
}
Либо я делаю это неправильно (вероятно), или у Apple есть работа (также вероятно).