the - Swift: ¿cómo deshabilitar la interacción del usuario mientras se lleva a cabo la acción táctil?
swift wikipedia (6)
Estoy trabajando con el kit de sprites y si el usuario toca la pantalla, las acciones dentro de
override func touchesBegan(touches: NSSet, withEvent event: UIEvent) {
/* Called when a touch begins */
for touch: AnyObject in touches {
}
}
se llevan a cabo. Sin embargo, mientras se llevan a cabo, el usuario todavía puede tocar la pantalla y la aplicación intenta ejecutar las acciones nuevamente.
¿Cómo deshabilito la interacción táctil / las acciones dentro de la función táctil mientras se ejecutan las acciones?
En Swift 3.0 es:
self.view.isUserInteractionEnabled = false
Intente obtener la vista del objeto táctil y luego deshabilite la interacción del usuario en él.
touch.view.isUserInteractionEnabled = false
Para deshabilitar la interacción del usuario en toda la aplicación, use:
UIApplication.shared.beginIgnoringInteractionEvents()
UIApplication.shared.endIgnoringInteractionEvents()
Puede usar la variable de clase booleana para detener la interacción mientras se está ejecutando el método, y después de eso solo puede cambiar el valor de booleano, al final del método.
Use UIApplication.shared.beginIgnoringInteractionEvents()
al final del primer método, luego cambie el valor de booleano y luego use otro método con la línea de inicio UIApplication.shared.endIgnoringInteractionEvents()
.
Si desea deshabilitar la interacción de un usuario de Botones, simplemente haga esto cuando se carga la pantalla.
self.btnname.isUserInteractionEnabled = false
Si desea deshabilitar la interacción del usuario como una vista, será lo mismo, simplemente elimine el nombre del botón y agregue el nombre de la vista.
Si por alguna razón desea habilitar la interacción, simplemente cambie "falso" a "verdadero".