У меня есть приложение с главным окном, которое большую часть времени остается ключевым окном (назовем его 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 игнорирует ориентацию интерфейса, поддерживаемую контроллером представления?