El modificador .keyboardShortcut de SwiftUI, introducido en iOS 14, permite asignar atajos de teclado a los controles. Estos atajos activan la acción principal del control. El modificador puede personalizar las teclas modificadoras más allá de la tecla de comando predeterminada. Un ejemplo clave muestra la navegación entre vistas con atajos aplicados a los botones. Sorprendentemente, los atajos permanecen activos incluso cuando el control asociado está fuera de la pantalla. Este comportamiento se debe al recorrido en profundidad de SwiftUI de la jerarquía de vistas para encontrar los objetivos del atajo. El sistema prioriza la búsqueda del primer control coincidente, independientemente de su visibilidad. Esto puede llevar a un comportamiento inesperado donde los controles fuera de la pantalla siguen respondiendo a los atajos. Una solución implica deshabilitar los controles utilizando el modificador .disabled basándose en el estado de la vista. Esto garantiza que los atajos solo estén activos cuando los controles relevantes sean visibles. El comentario de Curt Clifton proporciona contexto adicional.
.keyboardShortcutde SwiftUI, introducido en iOS 14, permite asignar atajos de teclado a los controles. Estos atajos activan la acción principal del control. El modificador puede personalizar las teclas modificadoras más allá de la tecla de comando predeterminada. Un ejemplo clave muestra la navegación entre vistas con atajos aplicados a los botones. Sorprendentemente, los atajos permanecen activos incluso cuando el control asociado está fuera de la pantalla. Este comportamiento se debe al recorrido en profundidad de SwiftUI de la jerarquía de vistas para encontrar los objetivos del atajo. El sistema prioriza la búsqueda del primer control coincidente, independientemente de su visibilidad. Esto puede llevar a un comportamiento inesperado donde los controles fuera de la pantalla siguen respondiendo a los atajos. Una solución implica deshabilitar los controles utilizando el modificador.disabledbasándose en el estado de la vista. Esto garantiza que los atajos solo estén activos cuando los controles relevantes sean visibles. El comentario de Curt Clifton proporciona contexto adicional.