どうも、ちょげ(@chogetarou)です。
Pickerのtagについて解説します。
タグ(tag)とは

tagは、Picker内の選択肢を判別するための値をします。
tagを設定しなければ、Picker内のどの選択肢が選ばれたのかを特定することができません。
また、タグに設定された値は、Pickerの引数selectionに格納されます。
以下は、タグを使った例です。
@State var user = ""
@State var name = ["ゴロー","ダイゴ","イズミ","カオル"]
var body: some View {
VStack {
Picker(selection: $user, label: Text(""), content: {
ForEach(0..<name.count) { index in
Text("\(name[index])")
.tag(name[index])
}
})
Text("選択されている値:\(user)")
}
}

tag(name[index])で選択肢を特定できる値をつけ、選ばれている値をuserに格納できるようにしています。
まとめ
tagは、選択肢となるビューにつけることで、どのビューが選択されているかを特定することができるようになります。
また、tagで設定された値は、Pickerのselectionに格納されるようになっています。
コメント