以NavigationView
为UIHostingController
的根,以下代码显示了iPad的拆分视图。
struct ContentView: View {
var body: some View {
NavigationView {
Text("Hello")
.navigationBarTitle("Home")
}
}
}
使用上面的代码,它显示了iPad上的拆分视图。我仍要使用NavigationView
并摆脱iPad的拆分视图,因为我希望拥有一个列表,点击它应按另一个视图?
答案 0 :(得分:5)
显式使用堆栈导航视图样式(默认情况下,它取决于平台)
NavigationView {
Text("Hello")
.navigationBarTitle("Home")
}
.navigationViewStyle(StackNavigationViewStyle())
答案 1 :(得分:0)
这对我不起作用,也不适用于使用IOS 14.2在iPad上使用任何其他NavigationStyle的情况。根视图始终看起来像这样。
var body: some View {
NavigationView {
VStack {
List {
ForEach(self.ideas) { Idea in
IdeaListRow(idea: Idea)
}
.onDelete { (indexSet) in
let ideaToDelete = self.ideas[indexSet.first!]
self.managedObjectContext.delete(ideaToDelete)
do {
try self.managedObjectContext.save()
} catch {
print(error)
}
}
}
.navigationViewStyle(DoubleColumnNavigationViewStyle())
.navigationBarTitle(Text("Idea List"))
.listStyle(GroupedListStyle())
.navigationBarItems(leading:
NavigationLink(destination: AddView()) {
Text("Add")
} , trailing: EditButton())
}
}
}