vista ver una siguiente puedo puede previa preliminar obtener ninguna los kb3114374 hay explorador error disponible debido controlador con archivos archivo adjuntos ios uiviewcontroller ios5

ios - ver - ¿Cómo puedo acceder a la vista de un controlador de vista principal desde un controlador de vista secundario?



no se puede obtener una vista previa debido a un error con el siguiente controlador de vista previa (5)

Tengo un controlador de vista principal que se encarga del dibujo para mi vista de Opengl ES 2D, y un administrador de botones de controlador de vista infantil que determina qué botones cargar y dibujar durante el lanzamiento.

Una vez que el usuario presiona uno de estos botones, se crea este controlador de vista y se supone que aparecerá su vista, pero la vista nunca se agrega, pero se ha probado que funciona. Aquí está mi código del controlador de vista principal:

buttonManager=[[ButtonManager alloc] init]; [self addChildViewController:buttonManager]; [self.view addSubview:buttonManager.view];

y aquí está mi código para lanzar esta vista:

-(void)launchStopDialog: (NSString*)stopName { NSLog(@"stopdialog should be launched."); if (stopDialogController == nil) stopDialogController = [[StopDialogController alloc] initWithNibName:@"StopDialog" bundle:nil]; if (stopDialogController) [stopDialogController presentWithSuperview:self.view.superview withStopName:stopName]; }


Ahora, después de que hayan matado al

self.parent

puedes usar

override func didMove(toParentViewController parent: UIViewController?) { }




Para acceder al controlador de vista principal, puede usar self.parentViewController . Una vez que lo tenga, puede acceder a su vista simplemente usando su propiedad de view


eso es lo que funciono para mi

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender { NSString * segueName = segue.identifier; if ([segueName isEqualToString: @"child-view"]) { ChildViewController * childViewController = (ChildViewController *) [segue destinationViewController]; [self addChildViewController:childViewController]; } }