Сбой UIKit в iOS14 для проектов без UISceneDelegate

#ios #xcode #uiviewcontroller #uikit #ios14

#iOS #xcode #uiviewcontroller #uikit #ios14

Вопрос:

Я вижу серьезный сбой в iOS 14 из-за того, что старые проекты XCode не имеют UISceneDelegate. Это довольно легко воспроизвести. Просто создайте вложенный просмотр topView с белым фоном в контроллере начального просмотра и установите для него значение hidden в iOS 14. Это единственный код, необходимый для воспроизведения проблемы:

  class ViewController: UIViewController {
    

    @IBOutlet weak var topPanel: UIView!
  
    
    override func viewDidLoad() {
        super.viewDidLoad()
        self.topPanel.isHidden = false
    }

}
  

Приложение должно быть запущено в ландшафтном режиме, чтобы увидеть этот сбой. Нескрытый вид раскрывается, как занавес, слева направо. Проблема будет более очевидна в видео, чем в gif, но поскольку мы не можем прикрепить видео в SO, давайте поработаем с gif. Это не относится к проектам с UISceneDelegate.

Итак, теперь я не ожидаю, что Apple исправит это в ближайшее время, каков разумный обходной путь для меня, если мне придется настроить iOS 12 или ниже?

s14

Также прикрепляю изображения компонентов в формате gif для большей наглядности.

введите описание изображения здесь

введите описание изображения здесь

введите описание изображения здесь

Комментарии:

1. это воспроизводимо и на устройстве?

2. Да, это только с устройства!