iOS: UISplitViewController no se puede enviar a UINavigationController

Tengo un proyecto XCode iPad con un controller de navigation. Intenté get un button para empujar un UISplitViewController a la stack de navigation, pero obtuve este error:

Los controlleres de vista dividida no se pueden enviar a un controller de navigation

Resulta que UISplitViewController no juega bien con UINavigationController. Sin embargo, todavía necesito mostrar el controller de vista dividida cuando se hace clic en este button. ¿Cómo hago esto? Y, también es importante, ¿cómo hago un button de retroceso para que el usuario pueda volver al controller de navigation?

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

De la documentation de Apple:

Un controller de vista dividida debe ser siempre la raíz de cualquier interfaz que crees. En otras palabras, siempre debe instalar la vista desde un object UISplitViewController como la vista raíz de la window de su aplicación. Los paneles de su interfaz de vista dividida pueden contener controlleres de navigation, controlleres de barra de tabs o cualquier otro tipo de controller de vista que necesite para implementar su interfaz.

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