Я пытаюсь добавить контроллер разделенного представления в свой существующий проект, чтобы он отображался поверх существующего содержимого в новом окне.
Шаблонный проект от Apple работает как положено. Для тестирования я просто скопировал элементы раскадровки из проекта шаблона в свою собственную раскадровку, дал splitViewController идентификатор раскадровки и скопировал классы.
Когда телефон с плюсом повернут в альбомную ориентацию, он правильно показывает мастер и детали рядом друг с другом. Однако, когда я нажимаю на основную запись, он помещает экземпляр нового подробного контроллера поверх основного содержимого вместо использования вторичного подробного представления справа для содержимого.
Вот как я показываю splitViewController:
guard let splitViewController = storyboard.instantiateViewController(withIdentifier: "MasterViewController") as? UISplitViewController else { return }
splitViewController.delegate = self
splitViewController.preferredDisplayMode = .automatic
self.conversationWindow = UIWindow(frame: UIScreen.main.bounds)
self.conversationWindow?.windowLevel = UIWindowLevelNormal + 0.1
self.conversationWindow?.rootViewController = splitViewController
self.conversationWindow?.makeKeyAndVisible()
Прежде чем нажать на запись:
После нажатия на запись:
Раскадровка:
Кто-нибудь когда-нибудь испытывал это?