Mi aplicación tiene aproximadamente 10 diferentes UIViewControllers, de los cuales solo uno de los cuales quiero cambiar al modo horizontal si el dispositivo se gira. (Todo lo demás, quiero mantenerlo en retrato.)¿Cómo implementar la rotación de UIViewController en respuesta a los cambios de orientación?
Para implementar la rotación en esa vista, necesitaba implementar el método 'shouldAutorotate' de su controlador y devolver SÍ. Como se accede a esta vista a través de un controlador de navegación, también tuve que crear una subclase de UINavigationController que implementa 'shouldAutorotate' y devuelve SÍ.
Esta solución funciona, pero demasiado bien. Encuentro que todos los UIViewControllers que presiono en mi subclase de UINavigationController responden a la rotación, incluso si implemento 'shouldAutorotate' y devuelvo NO. (Recuerde: solo quiero un UIViewController particular para responder a la rotación, no todos en la pila del controlador de navegación.)
Entonces, mi pregunta es: ¿cómo puedo hacer esto mejor? Todas las soluciones que puedo encontrar parecen 1) engorrosas, y 2) peores, no parecen funcionar.
Muchas gracias.