方法
SwiftUIで「長押し処理」を追加するには、「onLongPressGesture」モディファイアを使います。
View()
.onLongPressGesture(perform: {
//長押し処理
})
引数のperformクロージャで、長押しの処理を追加することが出来ます。
細かい設定

このモディファイアの定義自体は、次のようになっています。
func onLongPressGesture(
minimumDuration : Double,
maximumDistance : CGFloat,
pressing : ( (Bool) -> Void ),
perform action : @escaping () -> Void
) -> some View
minimumDistance : 長押し判定になる時間
maximumDisstance : 長押しの位置がずれても許容される距離
pressing : 押された時と離れた時の処理
perform : 長押しの処理
最初の2つの引数で、長押しに関する細かい処理を行います。
細かく設定したい人は、この引数を使って調整しましょう。
また、pressingは、長押しの処理ではなくても、ビューが押された時と離れた時に処理を行いたい場合に使います。
まとめ
SwifUIで長押し処理を追加するには、onLongPressGestureモディファイアを使います。
コメント