Swift TabViewの引数「selection」を利用するサンプル
環境
Swift version 5.2.3 (swift-5.2.3-RELEASE)
概要
変数を用意します。
@State var selected = value
TabViewの引数「selection」に用意した変数をバインドします。
TabView(selection: $selected) { 処理コード]
TabView内のタブにtag修飾子を付与し、tag修飾子内に値を指定します。
TabView(selection: $selected) {
FirstTab()
.tag(value1) //tagを付与
SecondTab()
.tag(value2)
処理コード
}
サンプルコード
struct ContentView: View {
@State var selected = "First"
var body: some View {
TabView(selection: $selected) {
Text("The First Tab")
.onTapGesture {
self.selected = "Second"
}
.tabItem {
Image(systemName: "1444.square.fill")
Text("First")
}
.tag("First")
Text("The Second Tab")
.onTapGesture {
self.selected = "Third"
}
.tabItem {
Image(systemName: "233.square.fill")
Text("Second")
}
.tag("Second")
Text("The Third Tab")
.onTapGesture {
self.selected = "First"
}
.tabItem {
Image(systemName: "3444.square.fill")
Text("Third")
}
.tag("Third")
}
}
}