Mam przycisk w SwiftUI i chciałbym mieć możliwość wykonania innej akcji dla „przycisku stuknięcia” (normalne kliknięcie / stuknięcie) i „długiego naciśnięcia”.
Czy jest to możliwe w SwiftUI?
Oto prosty kod dla przycisku, który mam teraz (obsługuje tylko „normalną” obudowę typu dotknij / dotknij).
Button(action: {self.BLEinfo.startScan() }) {
Text("Scan")
} .disabled(self.BLEinfo.isScanning)
Próbowałem już dodać „gest długiego naciśnięcia”, ale nadal „wykonuje” tylko kliknięcie „normalne / krótkie”. To był kod, który próbowałem:
Button(action: {self.BLEinfo.startScan() }) {
Text("Scan")
.fontWeight(.regular)
.font(.body)
.gesture(
LongPressGesture(minimumDuration: 2)
.onEnded { _ in
print("Pressed!")
}
)
}
Dzięki!
Gerard
onLongPressGesture()
przedtemonTapGesture()
zignoruje ten drugi.