[SwiftUI]スライダー(Slider)操作中の処理を追加するには?

SwiftUI
スポンサーリンク

方法

コード, プログラミング, ハッキング, Html, ウェブ, データ, デザイン, 発達, プログラム

スライダービューの操作中に処理を追加することが出来ます。

やり方は、Sliderビューに、onEditingChangedという引数を追加し、クロージャーで処理を追加します、

onEditingChangedは、「(Bool) -> Void」というクロージャーが型で、デフォルトでは何もしないことになっています。

@State var number : Double = 0
    @State var changing = false
    var body: some View {
        
        VStack {
            Slider(value: $number, in: 0...10, step: 1, onEditingChanged: { change in
               //処理
                self.changing = change
            })
            .padding()
            
            Text(changing ? "変更中" : "停止中")
        }
        
        
    }

変更中には、クロージャーの引数にtrueが渡されます。

上記の例では、編集中には変数にtrueが渡され、Textの文字が変更中になるようにしています。

まとめ

onEditingChanged引数を使うことで、Sliderビューに操作中の処理を追加することが出来ます。

参考

オススメの記事

コメント

タイトルとURLをコピーしました