ios ios5 uinavigationcontroller uisplitviewcontroller

iOS: UISplitViewController no puede ser empujado a UINavigationController



ios5 (1)

Para mostrar un SplitViewController necesitarás usar setRootViewController. Esto se debe a que SplitViewController necesita ser el controlador de la vista raíz.

De la documentación de Apple:

Un controlador de vista dividida siempre debe ser la raíz de cualquier interfaz que cree. En otras palabras, siempre debe instalar la vista desde un objeto UISplitViewController como vista raíz de la ventana de su aplicación. Los paneles de su interfaz de vista dividida pueden contener controles de navegación, controladores de barra de pestañas o cualquier otro tipo de controlador de vista que necesite para implementar su interfaz.

Para volver, necesitarás usar setRootViewController para volver a la página anterior. Me encontré con este problema cuando convertí mi aplicación de iPhone a universal y terminé usando un controlador de navegación para iPhone y setRootViewController para la versión de iPad. Es un poco fastidioso porque no puedes animarlo bien sin un poco de falsificación .

Tengo un proyecto XCode iPad usando un controlador de navegación. Traté de obtener un botón para empujar un UISplitViewController a la pila de navegación, pero obtuve este error:

Los controladores de vista dividida no pueden ser empujados a un controlador de navegación

Resulta que UISplitViewController no funciona bien con UINavigationController. Sin embargo, aún necesito mostrar el controlador de vista dividida cuando se hace clic en este botón. ¿Cómo hago esto? Y, también importante, ¿cómo hago un botón de retroceso para que el usuario pueda regresar al controlador de navegación?