Я боролся с этой проблемой в течение нескольких дней и не могу заставить ее работать. Прочитать несколько должностей СО (this, this, this, this, this и this). Спросил моего друга Google, помог понять проблему, но не решить ее.Swift UISplitViewController с несколькими раскадными версиями для подробного просмотра
В первой версии моего приложения iOS (Swift2 и XCode7) я использую UITableViewController и UINavigationViewController для загрузки нового контента из другой UIStoryboard. Все это прекрасно работает. Для второй версии этого приложения я хочу реализовать UISplitViewController и теперь я получаю ошибку:
*** Terminating app due to uncaught exception 'UIViewControllerHierarchyInconsistency', reason: 'adding a root view controller as a child of view controller:
Я понимаю намек, но не могу решить таким образом, что работает как в портретном и ландшафтном режиме. Более того, такое решение, которое я использовал, не использовало UINavigationController в ландшафтной ориентации.
Я создал тестовый проект, чтобы отследить эту ошибку, надеясь ее решить.
Это код, который генерирует ошибку:
let storyboard = UIStoryboard(name: "ThirdScreen", bundle: nil)
let controller = storyboard.instantiateInitialViewController() as! ThirdDetailViewController
controller.title = "Miracle!"
splitViewController?.showDetailViewController(controller, sender: nil)
Полный код этого тестового проекта available from GitHub.
Как это сделать?
Большое спасибо!