Estoy aprendiendo acerca de UINavigationController
y UIViewController
s. Aquí está la sencilla aplicación que construyo. Tenga en cuenta que uso ARC.¿Cómo funcionan UINavigationController y UIViewController?
Mi aplicación tiene un controlador de navegación y dos controladores de vista (llamémoslos FirstViewController
y SecondViewController
). Cuando se inicia la aplicación, el controlador de navegación empuja el FirstViewController
en la pila.
En FirstViewController
tengo un botón que empuja el SecondViewController cuando se toca. Aquí hay un código.
FirstViewController.m
-(IBAction)pushSecondViewController
{
SecondViewController *secondViewController = [SecondViewController alloc]init];
[self.navigationController pushViewController:secondViewController animated:YES];
}
En el segundo controlador de vista tengo un botón que pop el controlador de vista actual de la pila.
SecondViewController.m
-(IBAction)popViewController
{
[self.navigationController popViewControllerAnimated:YES];
}
Hasta ahora, todo bien. Aquí están mis preguntas:
¿El control de navegación comprueba una instancia existente de SecondNavigationController
y si no existe entonces crea una nueva?
Si no, ¿debo usar singleton para asegurarme de que solo se crea una instancia y volver a utilizarla en lugar de crear una nueva instancia cada vez que se toca el botón que empuja el SeconViewController
?
No, no quiero quedarme cerca del segundo controlador de vista. Tenía curiosidad sobre cómo funciona el controlador de navegación. ¡Gracias por la explicación! – ihodo
Para no comenzar un nuevo tema.Si mi aplicación contiene, digamos, cuatro controladores de vista, los controladores de vista primero y segundo se usan solo una vez en la aplicación. ¿Debo mostrarlos ([auto.navigationController popViewControllerAnimated: YES]) desde el controlador de navegación para no utilizar la memoria? – ihodo
No, solo use presionar y hacer estallar para moverse hacia arriba y hacia abajo en la pila de navegación. – jrturton