Как правильно переопределить ориентацию интерфейса, поддерживаемую контроллером просмотра UIWindow root? - PullRequest
0 голосов
/ 05 августа 2020

У меня есть приложение с главным окном, которое большую часть времени остается ключевым окном (назовем его W1). Иногда я представляю другое окно (назовем его W2) и вызываю makeKeyAndVisible () и скрываю W1.

W2 имеет root контроллер представления, который заменяет supportedInterfaceOrientations свойство. Проблема в том, что свойство supportedInterfaceOrientations контроллера представления W2 root игнорируется (даже не вызывается). Вместо этого вызывается один из контроллеров представления W1 root.

Вот как я показываю окно:

    self.w2.isHidden = false        
    self.w2.rootViewController?.view.frame = self.w1.bounds
    self.w2.makeKeyAndVisible()

    UIView.animate(withDuration: 0, animations: {
        self.w1?.alpha = 0.0
    }, completion: { (finished) in
        if (finished) {
            self.w1?.isHidden = true
            self.isPresenting = true
        }
        completion(finished)
    })

Правильно ли я делаю? почему W2 root игнорирует ориентацию интерфейса, поддерживаемую контроллером представления?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...