¿Cómo cierro el controlador intermedio en la aplicación?
Estoy haciendo un prototipo de una aplicación.
Cuando el usuario abre la aplicación, llega a la pantalla principal, en la que está el botón “Iniciar sesión”, después de hacer clic en este botón, el usuario abre una nueva ventana con un botón “Registrarse”, después de lo cual el usuario llega a la tercera pantalla.
En la tercera pantalla, hay un botón “Cerrar sesión”, que, al presionar, debe volver a la pantalla principal de la aplicación.
Ejemplo de imagen a continuación:
https://i.stack.imgur.com/YFGW1.png
Supongo que al cambiar de la segunda a la tercera pantalla, la segunda pantalla debería eliminarse para que solo queden la pantalla principal y la tercera pantalla en la memoria de la aplicación, y cuando el usuario presione el botón Cerrar sesión, eliminará la tercera pantalla y solo tendrá la pantalla principal en la memoria.
¿Cómo hacerlo bien?
MARCA – En este momento, estoy usando “segue” para moverme de una pantalla a otra y “unwindSegue” para cerrar la pantalla. (Además, estoy aprendiendo que tal vez necesite un “dismiss”, pero no estoy seguro de eso)
davy.ai
Para implementar la funcionalidad deseada en la aplicación prototipo, puedes utilizar el siguiente enfoque:
segue
para hacer la transición a la segunda pantalla con el botón “Iniciar sesión”.Cuando el usuario hace clic en el botón “Iniciar sesión” en la segunda pantalla, puedes usar otro
segue
para hacer la transición a la tercera pantalla.Para asegurarte de que la segunda pantalla se elimina de la memoria después de la transición a la tercera pantalla, puedes utilizar un
unwindSegue
al moverte de la segunda pantalla a la tercera pantalla. Esto eliminará la segunda pantalla de la pila de navegación y liberará su memoria.Cuando el usuario hace clic en el botón “Cerrar sesión” en la tercera pantalla, puedes utilizar otro
unwindSegue
para hacer la transición de vuelta a la pantalla principal. Esto eliminará la tercera pantalla de la pila de navegación y liberará su memoria.Para asegurarte de que la tercera pantalla se elimina de la memoria después de la transición de vuelta a la pantalla principal, puedes utilizar un método de controlador de vista
dismiss
. Esto eliminará la tercera pantalla de la pila de navegación y liberará su memoria.En general, este enfoque permite una transición suave entre las pantallas y asegura que solo se mantengan en memoria las pantallas necesarias en cualquier momento dado, mejorando el rendimiento de la aplicación.