是否有一个很好的代码示例(或文档)来展示如何检测多个手指(几乎)同时进行的长按。
我想在每个手指周围画一个圆圈。
通过长按和拖动手势链接,可以给我长按的位置。我想知道如何进行多次长按。
SwiftUI 未提供直接方法来检测开箱即用的特定数量手指的长按手势。您可以通过使用 UIKit 的 UILongPressGestureRecognizer 并将其集成到您的 SwiftUI 中来实现此目的。
struct ContentView: View {
// State variable to keep track of long press state
@State private var isLongPressing = false
var body: some View {
VStack {
// View to detect long press
Rectangle()
.fill(isLongPressing ? Color.red : Color.blue)
.frame(width: 200, height: 200)
.gesture(
LongPressGesture(minimumDuration: 1.0) // Adjust duration as needed
.onChanged { _ in
// Long press detected, update state
isLongPressing = true
}
.onEnded { _ in
// Long press ended, update state
isLongPressing = false
}
)
.padding()
// Display long press state
Text(isLongPressing ? "Long Pressing" : "Not Long Pressing")
.padding()
}
}
}
struct ContentView_Previews: PreviewProvider {
static var previews: some View {
ContentView()
} }