Otro de los gestos incorporados que tiene el framework SwiftUI es LongPressGesture. Este reconocedor de gestos te permite detectar un tap largo por parte del usuario. Por ejemplo, si tenemos una imagen y la queremos redimensionar solo cuando el usuario presione y sostenga presionado por almenos un segundo, puedes usar LongPressGesture para detectar el evento táctil.
Por ejemplo, en el siguiente código:
struct ContentView: View {
@State private var isPressed = false
var body: some View {
Image(systemName: "star.circle.fill")
.font(.system(size: 200))
.scaleEffect(isPressed ? 0.5 : 1)
.foregroundStyle(.green)
.gesture(
LongPressGesture(minimumDuration: 1.0)
.onEnded({ _ in
self.isPressed.toggle()
})
)
}
}Hemos implementado LongPressGesture para que haga que cuando la imagen, en este caso una estrella de la librería SF Symbols, sea presionada por el usuario por más de un segundo, cambie su tamaño.











