Cambie UIInterfaceOrientation para solo un UIViewController en la aplicación

Tengo una aplicación para iPhone con estructura como "Controlador de navegación con tabla -> controlador de vista siguiente con tabla -> QLPreviewController". Al tocar en la celda de la tabla en el controlador de la primera vista (con el controlador de navegación) aparece el nuevo controlador de vista con otra tabla, al tocar en la celda de la misma, se muestra QLPreviewController.

Por ejemplo: En la primera tabla hay Grupos, en la segunda tabla - Documentos del grupo seleccionado y QLPreviewController para obtener una vista previa del documento seleccionado.

Cada ViewController en mi aplicación debe aparecer solo en orientación Vertical (no al revés), pero QLViewController también debe ser compatible con Landscape (izquierda y derecha).

Estoy configurando el indicador canRotate en YES antes de que aparezca QLPreviewController. En AppDelegate sicanRotate == YES Vuelvo SÍ para cualquier orientación, para rotar QLPreviewController. QLPreviewControllerDelegate en el método previewControllerWillDismiss: (QLPreviewController *) el controlador establece el indicador canRotate de nuevo en NO. Pero si la orientación fue horizontal antes de que QLPreviewController despidiera, todos mis ViewControllers permanecen en orientación horizontal ...

¿Cómo puedo rotar ViewController de nuevo a la orientación vertical en el método WillDismiss?

Respuestas a la pregunta(1)

Su respuesta a la pregunta