【发布时间】:2020-05-10 12:28:15
【问题描述】:
我有以下结构
enum Page {
case chapter1
case chapter2
}
struct ContentView: View {
@State var page: Page? = nil
var body: some View {
NavigationView {
VStack {
NavigationLink(destination: Chapter1(page: self.$page),
tag: .chapter1,
selection: self.$page) {
Text("Chapter 1")
}
NavigationLink(destination: Chapter2(page: self.$page),
tag: .chapter2,
selection: self.$page) {
Text("Chapter 2")
}
}
}
}
}
struct Chapter1: View {
@Binding var page: Page?
var body: some View {
VStack {
Button("Back to Overview") {
self.page = nil
}
Button("Chapter 2") {
self.page = .chapter2
}
}
}
}
struct Chapter2: View {
@Binding var page: Page?
var body: some View {
VStack {
Button("Back to Overview") {
self.page = nil
}
}
}
}
当我从Chapter1 直接转到Chapter2 时,它会破坏Chaper2 中的反向链接。
首先,这是什么原因?
其次,有没有办法通过不同类型的动画从Chapter1 过渡到Chapter2,而不是重复的来回翻转?
【问题讨论】:
标签: swiftui