从 SceneDelegate 加载视图时黑屏

Black Screen when loading View from SceneDelegate

当我尝试加载此视图时,我的屏幕几乎是黑屏。但是如果我添加 view.backgroundColor = .red 它会正确显示红色。只是我在情节提要中所做的设置不会显示。

这是我使用的代码:

import UIKit

class SceneDelegate: UIResponder, UIWindowSceneDelegate {

    var window: UIWindow?


     func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) {
   
    guard let _ = (scene as? UIWindowScene) else { return }

    
    
    guard let windowScene = scene as? UIWindowScene else { return }
    window = UIWindow(windowScene: windowScene)
    let mainStoryboard = UIStoryboard(name: "Main", bundle: nil)
    window?.rootViewController = mainStoryboard.instantiateViewController(withIdentifier: "ResultsViewController") as! ResultsViewController
    window?.makeKeyAndVisible()

    
}


import UIKit

class ResultsViewController: UINavigationController {

   
    override func viewDidLoad() {
          
        super.viewDidLoad()
        
view.backgroundColor = .blue
        
    }
    

}

您似乎在故事板中创建了 ResultsViewController。您必须从情节提要中加载它以将其设置为 rootViewController.

let mainStoryboard = UIStoryboard(name: "Main", bundle: nil)
window?.rootViewController = mainStoryboard.instantiateViewController(withIdentifier: "ResultsViewController") as! ResultsViewController

注意:不要忘记在故事板中将 ResultsViewController 的标识符设置为“ResultsViewController”。