我正在尝试跟踪用户在 SwiftUI 中的哪个页面上,TabView
但PageTabViewStyle
我无法找出跟踪页面索引的最佳方法?使用.onAppear
效果不佳,因为它被多次调用,即使不在屏幕上,第 2 页和第 3 页也会被调用。
@State var pageIndex = 0
var body: some View {
VStack {
Text("current page = \(0) ")
TabView {
Text("First")
.onAppear {
pageIndex = 0
}
Text("Second")
.onAppear {
pageIndex = 1
}
Text("Third")
.onAppear {
pageIndex = 2
}
}
.tabViewStyle(PageTabViewStyle(indexDisplayMode: .never))
}
}
}