Ejemplo UINavigationController
25 July 2008
Muchas han sido las preguntas y dudas relacionadas con el comportamiento de la clase UINavigationController y con el efecto de pasar de una vista a otra a través del desplazamiento desde la derecha hacia la izquierda. Este efecto, producido a través del método pushViewController, se encuentra perfectamente representado en el siguiente ejemplo.
Recogido de la sección de ejemplos de iPhone Dev Center, encontramos NavBar que nos muestra este comportamiento con seis vistas distintas, cada una de ellas con su propio fichero de recursos.
Partimos de un ejemplo sencillo, que nos muestra un controlador de navegación UINavigationController desde nuestra clase delegada principal.

Dicho controlador de navegación, como vista principal cargará un controlador de vista, definido en nuestro fichero de recursos principal MainWindow.xib, llamado MainViewController.

Antes de conocer el comportamiento de dicho controlador, encargado de todo el funcionamiento de cambiar de una vista a otra, es necesario saber que el resto de vistas que serán mostradas, están definidas en nuestro proyecto como controladores de vistas independientes UIViewController, con su propio fichero de recursos.

Volviendo a nuestra clase MainViewController, encargada de realizar el efecto de cambio entre las distintas vistas, destacamos que utilizamos un array (menuList) como índice para almacenar todas las vistas que queremos mostrar, que igualmente será utilizado dicho índice para mostrar los elementos de nuestro TableView principal de nuestra aplicación.
Visto esto, tan solo queda destacar, que tras la selección de cualquier item o elemento de nuestro TableView (didSelectRowAtIndexPath), obtendremos el controlador de vista almacenado en el array (menuList) para proceder a realizar dicho efecto:
[[self navigationController] pushViewController:targetViewController animated:YES];
Me parece un ejemplo muy util para comprender el funcionamiento del controlador de navegación UINavigationController, por lo que recomiendo descargarlo y estudiarlo detenidamente.
Recogido de la sección de ejemplos de iPhone Dev Center, encontramos NavBar que nos muestra este comportamiento con seis vistas distintas, cada una de ellas con su propio fichero de recursos.
Partimos de un ejemplo sencillo, que nos muestra un controlador de navegación UINavigationController desde nuestra clase delegada principal.

Dicho controlador de navegación, como vista principal cargará un controlador de vista, definido en nuestro fichero de recursos principal MainWindow.xib, llamado MainViewController.

Antes de conocer el comportamiento de dicho controlador, encargado de todo el funcionamiento de cambiar de una vista a otra, es necesario saber que el resto de vistas que serán mostradas, están definidas en nuestro proyecto como controladores de vistas independientes UIViewController, con su propio fichero de recursos.

Volviendo a nuestra clase MainViewController, encargada de realizar el efecto de cambio entre las distintas vistas, destacamos que utilizamos un array (menuList) como índice para almacenar todas las vistas que queremos mostrar, que igualmente será utilizado dicho índice para mostrar los elementos de nuestro TableView principal de nuestra aplicación.
Visto esto, tan solo queda destacar, que tras la selección de cualquier item o elemento de nuestro TableView (didSelectRowAtIndexPath), obtendremos el controlador de vista almacenado en el array (menuList) para proceder a realizar dicho efecto:
[[self navigationController] pushViewController:targetViewController animated:YES];
Me parece un ejemplo muy util para comprender el funcionamiento del controlador de navegación UINavigationController, por lo que recomiendo descargarlo y estudiarlo detenidamente.

Deja un comentario