首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何获得在TabView中选择哪个视图的值?

如何获得在TabView中选择哪个视图的值?
EN

Stack Overflow用户
提问于 2020-09-07 07:17:12
回答 1查看 267关注 0票数 2

我目前正在使用SwiftUI开发一个应用程序。

这个应用程序有两个视图控制一个Tab视图。

我想得到一个在TabView中选择哪个视图的值。

有什么办法吗?

ContentView.swift

代码语言:javascript
复制
import SwiftUI

struct ContentView: View {
    
   var body: some View {
        TabView {
           FirstView()
                .tabItem {
                        Text("First")
            }.tag(1)
           SecondView()
                .tabItem {
                        Text("Second")
            }.tag(2)
        }
    }
}

struct ContentView_Previews: PreviewProvider {
    static var previews: some View {
        ContentView()
    }
}

FirstView.swift

代码语言:javascript
复制
import SwiftUI

struct FirstView: View {
    var body: some View {
        Text("FirstView")
    }
}

struct FirstView_Previews: PreviewProvider {
    static var previews: some View {
        FirstView()
    }
}

SecondView.swift

代码语言:javascript
复制
import SwiftUI

struct SecondView: View {
    var body: some View {
        Text("SecondView")
    }
}

struct SecondView_Previews: PreviewProvider {
    static var previews: some View {
        SecondView()
    }
}

Xcode: 11.7版

Swift: Swift 5

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-09-07 07:41:07

您需要使用选择,如下所示

注意:选择应该与标记使用的类型相同(并使用相应的标记值以编程方式选择特定的选项卡)

代码语言:javascript
复制
struct ContentView: View {
   @State private var selectedTab = 1  // default selection

   var body: some View {
        TabView(selection: $selectedTab) {     // << here !!
           FirstView()
                .tabItem {
                        Text("First")
            }.tag(1)
           SecondView()
                .tabItem {
                        Text("Second")
            }.tag(2)
        }
    }
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63772932

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档