Странно, это вопрос, который никто не задает.Насколько я знаю, невозможно поделиться rootViewController, который, я думаю, без сомнения, является ошибкой, поскольку, когда вы проверяете соединение на раскадровке, вы видите, что контроллер представления подключен к обоим контроллерам навигации.Я считаю это недостатком раскадровки, потому что дублирование viewControllers и повторное применение всех их соединений весьма подвержено ошибкам и делает раскадровки слишком сложными.
Я вижу ваше решение проблемы.Подобные обходные пути заставляют меня задаться вопросом, готова ли текущая функциональность раскадровки в iOS для создания приложений.Я думаю, что есть концептуальная проблема с раскадровками, Apple должна решить, представляет ли viewController на раскадровке экземпляр или если он представляет только класс, сейчас это не согласовано, поскольку вы можете видеть, что несколько сегментов могут фактически указывать натот же viewController, но на самом деле каждый segue имеет свой собственный экземпляр, почему это также не выполняется для соединений rootViewController? Я не знаю.
Как примечание, в вашем решении учитывается следующее изДокументация Apple:
"Важно. Контроллер представлений является единственным владельцем своего представления и всех создаваемых им подпредставлений. Он отвечает за создание этих представлений и за отказ от владения ими в соответствующее время, в том числе во время нехватки памяти.условия и когда сам контроллер представления выпущен.Если вы используете раскадровку или файл пера для хранения ваших объектов представления, каждый объект контроллера представления автоматически получает свою собственную копию этих представлений, когда контроллер представления запрашивает fили их.Однако, если вы создаете свои представления вручную, вы никогда не должны использовать одни и те же объекты представления с несколькими контроллерами представления. "
http://developer.apple.com/library/ios/#documentation/UIKit/Reference/UIViewController_Class/Reference/Reference.html