![](/img/trans.png)
[英]Keyboard appearance causes preceding tab to fire onAppear in TabView using SwiftUI
[英]swiftUI tabView how to set default view onAppear?
我有一个带有多个视图的 tabView,我想知道如何在加载时取消定义默认视图。 默认情况下,Xcode 分配第一个视图,但我希望在启动应用程序时加载第二个视图。
var body: some Scene {
WindowGroup {
TabView {
alertView()
todayView()
forecastView()
}
.tabViewStyle(PageTabViewStyle(indexDisplayMode: .always))
.onAppear
{
UIPageControl.appearance().currentPageIndicatorTintColor = .black
UIPageControl.appearance().pageIndicatorTintColor = UIColor.black.withAlphaComponent(0.2)
}
}
}
让我们在显式场景根视图中移动所有内容
var body: some Scene {
WindowGroup {
ContentView()
}
}
现在我们可以为此使用selection
,例如
struct ContentView: View {
@State private var selection = 2 // << here !!
var body: some View {
TabView(selection: $selection) { // << here !!
alertView().tag(1)
todayView().tag(2) // << here !!
forecastView().tag(3)
}
.tabViewStyle(PageTabViewStyle(indexDisplayMode: .always))
.onAppear
{
UIPageControl.appearance().currentPageIndicatorTintColor = .black
UIPageControl.appearance().pageIndicatorTintColor = UIColor.black.withAlphaComponent(0.2)
}
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.