Pregunta

Tengo 2 viewcontrollers A, B

    se visualiza
  1. ViewController A en la pantalla
  2. La vista de ViewController B es añadido a la vista de ViewController A.

¿Cómo puedo acceder ViewController A partir ViewController B sin pasar un puntero?

self.parentViewController no funciona vuelve Nuil

¿Fue útil?

Solución

Esto debería funcionar aunque no es muy elegante:

UIViewController* viewControllerA = 
    (UIViewController*) [[self.view superview] nextResponder];

Otros consejos

¿Por qué la vista de viewController B agrega a la vista de viewController A? Si va a añadir lo que significa el fin de viewController A, puede hacerlo mediante la asignación de un nuevo UIView y mostrar que en la parte superior de la vista actual.

Por otro lado, si usted está tratando de transición de un controlador de vista a otro, es decir, ir de A a B y luego de vuelta a A, se debe utilizar un UINavigationController como se especifica en el controlador de vista Guía de programación en la documentación de Apple.

Fuente: View Controller Guía de programación

Editar : Si desea utilizar [[self parentViewController] yourMethodHere]; se necesita una jerarquía de vistas, para lo cual se puede utilizar el UINavigationController. En el esquema actual no hay una jerarquía construida de modo que no hay controlador de vista de los padres.

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