iphone uiviewcontroller autorotate

iphone - Hacer que una clase específica de controlador de vista se gire automáticamente en una aplicación de barra de pestañas, pero obligando al resto de las clases de controlador de vista a permanecer en el retrato



uiviewcontroller autorotate (1)

Usted puede lograr esto por:

  1. configuración de la orientación de la viewWillAppear de viewWillAppear para ver viewWillAppear y ver que viewWillDisappear

-(void) viewWillAppear:(BOOL)animated { [super viewWillAppear: animated]; [[UIApplication sharedApplication] setStatusBarOrientation: UIInterfaceOrientationLandscapeRight]; }

-(void) viewWillDisappear:(BOOL)animated { [super viewWillDisappear: animated]; [[UIApplication sharedApplication] setStatusBarOrientation: UIInterfaceOrientationPortrait]; }

y girando una vista manualmente: self.view.transform = CGAffineTransformMakeRotation(M_PI/2);

  1. presentando esa vista modaly activará el método shouldAutorotateToInterfaceOrientation

Tengo un controlador de barra de pestañas con este código

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation { // Return YES for supported orientations //NSLog(@"object type %@" ,nil); if([[self navigationController ] isKindOfClass:[UINavigationController class]]) if([[[self navigationController] visibleViewController] isKindOfClass:[SLImageViewController class]]) return YES; return (interfaceOrientation == UIInterfaceOrientationPortrait); }

Necesito cualquier instancia de la clase SLImageViewController para rotar, pero ninguna de las demás. He hecho todo lo que puedo pensar, como agregar un retorno SÍ a mi SLViewViewController y otras soluciones.

¿Alguien puede decirme lo que estoy haciendo mal?