在 Swift 5 中点击通知时切换 ViewController

Switching ViewControllers when tapping a notification in Swift 5

当点击包含“主页”类别的通知时,我正在尝试将我的根 ViewController 切换到我的主页ViewController。自从添加 SceneDelegate 以来,我在从 AppDelegate 转换 ViewController 时遇到了瓶颈。

我的 AppDelegate,使用故事板 Swift 5 和 Xcode 11.6

    func userNotificationCenter(_ center: UNUserNotificationCenter, didReceive response: UNNotificationResponse, withCompletionHandler completionHandler: @escaping () -> Void) {
        print("Handle push from background or closed")
        print("user clicked on the notification")
        let userInfo = response.notification.request.content.userInfo
        let categoryValue = userInfo["category"] as? String ?? "0"
        if categoryValue == "Home"
        {
            print("Switching to Home!")

            //change ViewController here

            }
            
        }
    }

感谢您的帮助!

所以问题是如何与现场代表通话?

申请是UIApplication.shared。该应用程序有 connectedScenes。取第一个,求其delegate。将其投射到 SceneDelegate 并与其对话。

或者如果你想直接操作 window(我不建议这样做),请向应用程序询问它的 windows。再一次,取第一个。