SwiftUI no soporta poner una condición de targetEnvironment() dentro de los modificadores de una vista, así que se puede extraer en un método.
func getClearGesture() -> some Gesture {
#if targetEnvironment(macCatalyst)
return TapGesture(count: 2)
.onEnded { _ in
memory = 0.0
}
#else
return DragGesture(minimumDistance: 20)
.onEnded({ _ in
memory = 0.0
})
#endif
}
En el ejemplo anterior se tuvo que usar some Gesture porque el cliente del método requería un tipo de dato concreto.
En el entorno de pruebas se puede hacer lo siguiente:
#if targetEnvironment(macCatalyst)
memoryDisplay.doubleTap()
#else
memoryDisplay.swipeLeft()
#endif
Top comments (0)