TabView 选择在 SwiftUi Playground 中不起作用

Posted

技术标签:

【中文标题】TabView 选择在 SwiftUi Playground 中不起作用【英文标题】:TabView Selection does not work in SwiftUi Playground 【发布时间】:2021-04-05 13:53:32 【问题描述】:

所以我尝试在 Swiftui 中添加一个简单的 TabView,我使用 ForEach 循环对其进行测试,它的工作原理就像一个魅力,但是当我不使用 ForEach 循环时,它不起作用

那我做错了什么

VStack
        TabView(selection: $Selection)
            Text("Test1")
            Text("Test2")
            Text("test3")
        .tabViewStyle(PageTabViewStyle(indexDisplayMode: .never))
        .foregroundColor(.black)
        Group
            HStack
                ForEach(0..<3)i in
                    Button(action: 
                        withAnimation 
                            Selection = i
                        
                    ) 
                        Circle()
                        .frame(width:100, height:70)
                        .foregroundColor (.red)
                
            
        
        

Ps : 目前在 MAC 上使用 Swift Playground

【问题讨论】:

【参考方案1】:

像这样将.tag() 添加到 TabView 内的项目中...:

TabView(selection: $Selection)
    Text("Test1").tag(0)
    Text("Test2").tag(1)
    Text("test3").tag(2)
.tabViewStyle(PageTabViewStyle(indexDisplayMode: .never))

【讨论】:

以上是关于TabView 选择在 SwiftUi Playground 中不起作用的主要内容,如果未能解决你的问题,请参考以下文章

SwiftUI Picker 视图在 TabView 中消失

SwiftUI:如何将图像更新为 TabView 中的填充/轮廓

如何使用 SwiftUI TabView 更多选项卡来阻止它与我选择的选项卡变量混淆

SwiftUI 没有使用 List 和 TabView 正确处理 @State

SwiftUI 滑动 TabView 时如何访问 ScrollViewReader 的代理

swiftui TabView 在设备下呈现 UIViewControllerRepresentable 的意外行为