Pregunta

Tengo un control de navegación con varias vistas. Todo funciona correctamente. Ahora quiero mostrar una alerta en la vista de los padres, después de llamar al método [self.navigationController popViewControllerAnimated:YES]; en la vista del niño. Configuré la alerta para mostrar en el controlador de vista del padre viewDidLoad. Pero lo que reconozco es que esto solo se llama la primera vez que se llama la vista. ¿Hay algún método llamado cada vez que vuelva a esta vista? ¡Gracias!

¿Fue útil?

Solución

Tuve que quitar el -(void)viewDidAppear:(BOOL)animated; Para que esto funcione:

-(void)viewWillAppear:(BOOL)animated
{
  //YOUR CODE HERE (mine was the alert showing up)
}

Ahora la alerta funciona perfectamente.

Otros consejos

Deberías intentarlo -(void)viewDidAppear:(BOOL)animated;. No olvides llamar [super viewDidAppear:animated]; en algún momento de su implementación.
Otra forma de atrapar este evento es usar un método de delegado:

-(void)navigationController:(UINavigationController *)navigationController
      didShowViewController:(UIViewController *)viewController
                   animated:(BOOL)animated;

Puede encontrar más información visitando Referencia de protocolo UINAVIGACIÓN CONTROLLERDELEGATE.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top