gpt4 book ai didi

ios - 从 AppDelegate 呈现 ViewController

转载 作者:行者123 更新时间:2023-12-01 22:19:42 25 4
gpt4 key购买 nike

我正在编写一个函数,当我的应用程序在本地接收到远程通知时将调用该函数。首先,使用库 BRYXBanner 显示横幅,然后当用户点击横幅时,它将调用此函数,该函数应显示名为 ChatLogViewController 的 View Controller 。可以从应用程序中的任何位置调用此函数,因此该函数的参数之一是 fromViewController。我试图找出两个问题。

  • 如何使用函数 GoToChatLogVC()
  • 从应用程序内的任何位置呈现 ChatLogViewController

    代码:
    func GoToClassVC(fromVC : UIViewController, toClassID: String) {
    let chatLog = ChatLogViewController()
    fromVC.present(chatLog, animated: true) {
    chatLog.classID = toClassID
    }
    }
  • 如何将此函数分配给 (()->()) 类型的属性?

  • Screenshot of Function Code
    guard let currentVC = self.window?.currentViewController() else {
    print("ERROR")
    return
    }

    let banner = Banner(title: title, subtitle: body, image: #imageLiteral(resourceName: "MessageIcon"), backgroundColor: UIColor(red:40.00/255.0, green:170.0/255.0, blue:226/255.0, alpha:1.000))

    banner.show(duration: 3.0)

    banner.didTapBlock = GoToClassVC(fromVC: currentVC, toClassID: self.backgroundLaunchClassID)

    感谢您的帮助!

    最佳答案

    如果您想从任何地方展示 ViewController,那么您可以在 rootViewController 上展示它。的 UIWindow如下所示。

    if let rootVC = UIApplication.shared.keyWindow?.rootViewController {
    let chatLog = ChatLogViewController()
    rootVC.present(chatLog, animated: true, completion: nil)
    }

    关于ios - 从 AppDelegate 呈现 ViewController,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46291790/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com