如何在iOS 14,SwiftUI 2中以编程方式更改PageTabView? [英] How to change PageTabView programmatically in iOS 14, SwiftUI 2?
本文介绍了如何在iOS 14,SwiftUI 2中以编程方式更改PageTabView?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在探索Xcode 12和SwiftUI 2.0中出现的新事物
I'm exploring new things came in Xcode 12 and SwiftUI 2.0
我已经在Xcode 12,iOS 14,Swift UI 2中创建了具有TabView和PageTabViewStyle的综合浏览页面.我想在单击该按钮时添加下一个按钮,页面应移至第二个视图.此处文本("Hello").
I have created a pageview onboarding screen with TabView and PageTabViewStyle in Xcode 12, iOS 14, Swift UI 2. I want to add the next button when clicking on it, the page should move to the second view. Here Text("Hello").
struct OnBoardingView: View {
var body: some View {
TabView {
Text("Hi")
Text("Hello")
Text("Welcome")
}
.tabViewStyle(PageTabViewStyle())
.indexViewStyle(PageIndexViewStyle(backgroundDisplayMode: .always))
}
}
推荐答案
此处是解决方案的演示.经过Xcode 12/iOS 14的测试
Here is a demo of solution. Tested with Xcode 12 / iOS 14
struct OnBoardingView: View {
@State private var selectedPage = 0
var body: some View {
VStack {
HStack {
Button("<") { if selectedPage > 0 {
withAnimation { selectedPage -= 1 }
} }
Spacer().frame(width: 40)
Button(">") { if selectedPage < 2 {
withAnimation { selectedPage += 1 }
} }
}
TabView(selection: $selectedPage) {
Text("Hi").tag(0)
Text("Hello").tag(1)
Text("Welcome").tag(2)
}
.tabViewStyle(PageTabViewStyle())
.indexViewStyle(PageIndexViewStyle(backgroundDisplayMode: .always))
}
}
}
这篇关于如何在iOS 14,SwiftUI 2中以编程方式更改PageTabView?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文