0

我用两个 tabItems 创建了 Tab bar 的演示。每个选项卡项中都有视图控制器。

在切换选项卡时,它显示其各自的 UI。

这仅在iOS 13上发生。

代码:

struct ContentView: View {
    private enum Tab: Hashable {
           case one
           case two
    }
    @State private var selectedIndex = Tab.one
    var body: some View {
        TabView(selection: $selectedIndex) {
            DetestVXViewController(bgColor: .red).tabItem {
                Text("123")
            }.tag(Tab.one)
            DetestVXViewController(bgColor: .green).tabItem {
                Text("321")
            }.tag(Tab.two)
        }
       
    }
}

====

附上 iOS 13 和 15 的图像。

在此处输入图像描述

在此处输入图像描述

4

1 回答 1

0

tag除非您需要跟踪所述选项卡以进行快速操作或其他目的,否则使用似乎过大了。如果需要,您仍然可以在其中使用标签。如果需要,您也可以使用@State属性进行选择。您可以使用以下示例轻松切换选项卡。

在此处输入图像描述 在此处输入图像描述

struct ContentView: View {
    var body: some View {
        TabView {
            ForEach(1..<3) { index in
                SomeView(title: "\(index)")
                    .tabItem {
                        Image(systemName: "\(index).circle.fill")
                        Text("\(index)")3
                    }
                //.tag(index)
            }
        }
    }
}
于 2021-10-07T23:32:39.197 回答