Я пытаюсь представить пользовательский контроллер вида на внешнем подключенном экране в iOS 13. Я следовал этому руководству:
http://www.spazstik-software.com/blog/article/how-to-display-custom-content-on-a-external-screen-from-a-ios-device
У меня есть следующий код:
/// A private method used to setup a external screen with a window
/// loaded with a ExternalScreenViewController
///
/// - parameter screen: A UIScreen object to connect the
/// ExternalScreenViewController too
private func setupExternalScreen(screen: UIScreen) {
guard externalWindow == nil,
let vc = self.storyboard?.instantiateViewControllerWithIdentifier("ExternalScreen") as? ExternalScreenViewController else {
return
}
externalWindow = UIWindow(frame: screen.bounds)
externalWindow!.rootViewController = vc
externalWindow!.screen = screen
externalWindow!.hidden = false
}
В строке externalWindow!.screen = screen
Я получаю сообщение об ошибке в консоли Xcode 11.4.1:
[Assert] Ошибка в клиенте UIKit: - [ UIWindow setScreen:] не должно вызываться, если клиент принимает жизненный цикл UIScene. Вызов - вместо этого [UIWindow setWindowScene:].
Контроллер пользовательского представления не отображается на внешнем дисплее.
Что я должен изменить? Я хочу работать как с iOS 13.x, так и с предыдущими устройствами.