2009-06-23 28 views
10

tengo un problema y voy a tratar de explicar el tema:¿Cómo se accede al controlador de vista de un súper?

  1. tengo principal UIViewController (Pantalla completa)
  2. tengo uno secundarias UIViewController (setBounds)
  3. he añadido mi vista secundaria a mi mainView usando esto:

    [mainController.view addSubview:secondaryController.view]; 
    
  4. , creamos una tercera controlador: modalController, he añadido a mi secondar y controlador de la siguiente manera:

    [secondaryController presentModalViewController:modalController animated:YES]; 
    
  5. que hacer el cálculo sobre la base de algunos eventos en el interior de mi modelController.

  6. soy capaz de enviar mensajes desde mi modalController a mi secondaryController usando:

    [[self parentViewController] performSelector : @selector(myMethodInSecondaryController:) withObject : myObject afterDelay : .5]; 
    

    NOTA: "auto" corresponde a la modalController

  7. que necesito para pasar "myObject" a mi mainController, pero no puedo hacer referencia a mi mainController del secondaryController. He intentado esto:

    [[self parentViewController] performSelector : @selector(myMethodInMainController:) withObject:myObject afterDelay : .5]; 
    

    NOTA: "auto" corresponde a la secondaryController

    pero no funciona, tengo acceso a la vista de mi mainController usando: self.view.superview

    NOTA: "auto" es mi secondaryController

pero no a su controlador.

Respuesta

32

En su controlador secundario, tratar

id mainViewController = [self.view.superview nextResponder]; 

y comprobar si este es el controlador de vista que usted está buscando.

documentación de Apple de -[UIResponder nextResponder]:

UIView implementa este método mediante la devolución del objeto UIViewController que lo gestiona (si tiene uno) o su supervista (si no lo hace)

+1

Gracias Nikolai !!!!!!!!!!!!!!!!! Eso funcionó perfectamente :) gracias Saludos desde Guadalajara México !! Alejandra :) – Alejandra

+1

De nada (de Berlín, Alemania) –

Cuestiones relacionadas