どうも、ちょげ(@chogetarou)です。
Toggleボタンで値の変更を検知して、処理をする方法を紹介します。
方法

Toggleの値の変更によって処理をするには、onChange修飾子を使います。
まず、ToggleビューにonChange修飾子を付与し、onChangeの引数「of」にToggleの値を指定します。
そして、onChangeのクロージャーに値を変更した際の処理を指定します。
onChangeのクロージャーは、引数で変更後の新しい値を受け取ります。
Toggle(・・・)
.onChange(of: isOn) { newValue in
//値の変更時の処理
}
onChange修飾子を使うことで、Toggleの値の変更で処理をすることができます。
使用例
struct ContentView: View {
@State var isOn = false
var body: some View {
VStack {
Toggle("Switch", isOn: $isOn)
.padding()
.onChange(of: isOn) { newValue in
print(newValue)
}
}
}
}

[SwiftUI]Toggleボタンのラベルを非表示にするには?
Toggleビューで表示するラベルを非表示に設定する方法を紹介します。

[SwiftUI]ToggleボタンのONの時の背景色を設定するには?
ToggleボタンのONになっている時の背景色を設定する方法を紹介します。

[SwiftUI]「Toggle(トグル)ビュー」の使い方[Xcode]
2021.8.15 「Toggleビューって何?」「どうやって使えばいいの?」という人に向けて、Toggleビューの使い方を解説します。

[SwiftUI]Picker(ピッカー)を操作できないようにするには?
Pickerをユーザーが操作できないようにする方法を紹介します。
コメント