UIWindow及其内容未显示在Xcode 11 iOS 13中。出现黑屏



我有一个Swift项目,它是在Xcode 10.2中开发的,运行良好。我已经将我的代码从Xcode10.2迁移到Xcode11.3。此后,我的应用程序无法正常工作。每当我尝试添加窗口时,它的内容都不会显示,而且完全在屏幕后面。

我在控制台中得到了这个错误:

-[Window]不再支持手动将rootViewController的视图添加到视图层次结构中。请允许UIWindow将rootViewController的视图添加到视图层次结构本身

这是我的代码:

fileprivate(set) var topOverlayWindow         = UIWindow()
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
self.topOverlayWindow.windowLevel = UIWindow.Level(rawValue: CGFloat.greatestFiniteMagnitude)
self.topOverlayWindow.backgroundColor = NSUtility.editVideoThemeColor
self.topOverlayWindow.frame = CGRect(x: 0.0, y: 0.0, width:  56, height: 45)
self.topOverlayWindow.rootViewController = KAPPDELEGATE?.window?.rootViewController;
self.topOverlayWindow.alpha = 1.0
self.topOverlayWindow.isHidden = false
self.topOverlayWindow.makeKeyAndVisible()
}

我得到了解决方案。现在它在iOS 12和Xcode 11的iOS 13中也运行良好

在上面的代码中,我只是替换了这个

self.topOverlayWindow.rootViewController = KAPPDELEGATE?.window?.rootViewController 

带有下面提到的代码

self.topOverlayWindow.rootViewController = UIViewController()

//或者您可以将引用传递给任何新的控制器Rest一切正常。参考取自此处:

UIWindow未在iOS 13 中显示内容

相关内容

  • 没有找到相关文章

最新更新