gpt4 book ai didi

ios - 从推送通知打开 View Controller 时如何管理 View 层次结构

转载 作者:行者123 更新时间:2023-11-30 11:18:44 25 4
gpt4 key购买 nike

当使用 didReceive 从 View Controller 单击推送通知时,我已成功从应用程序委托(delegate)打开 View Controller 方法。我的问题是管理层次结构。假设我有 View A、B 和 C,这样我将在以下步骤中看到 View C: View A -> View B -> View C。但是,当我单击推送通知时,它会将我带到 View C,因此当我单击 View C 的后退按钮时,它应该具有相同堆栈顺序的 View B 和 View A。可以这样做吗?

编辑:这是我的代码(如果有帮助的话)

我想要 BaseVc > secondaryBaseVc > LogbookVc > DetailVc

        if let info = userInfo as? [String:Any]{
let id = info["id"] as? String ?? ""


let storyBoard: UIStoryboard = UIStoryboard(name: "Main", bundle:nil)
let BaseVc = storyBoard.instantiateViewController(withIdentifier: "BaseViewController") as! BaseViewController
let secondStoryboard : UIStoryboard = UIStoryboard(name: "Second Storyboard", bundle: nil)

let secondBaseVc : BaseController = secondStoryboard.instantiateViewController(withIdentifier: "secondBaseVc") as! secondBaseVc
let LogbookVc : LogbookVc = secondStoryboard.instantiateViewController(withIdentifier: "LogbookVc") as! LogbookVc
let DetailVc: DetailVc = secondStoryboard.instantiateViewController(withIdentifier: "DetailVc") as! DetailVc

}

我应该如何连接它们以显示 DetailVc 但让它们按顺序排列,以便当我单击后退按钮时我应该有日志 < secondaryBaseVc < Base Vc

最佳答案

实际上并非如此,如果堆栈中没有这些 viewController A 和 B,那么您就无法将某些内容弹出到前一个 viewController。

在我看来,你能做的是:你必须自己处理这个问题,比如收到通知时。必须先推A,再推B,再推C,设置animation: false,这样就不会产生过渡的效果。

.navigationController?.pushViewController(objA, animated: false) .navigationController?.pushViewController(objB, animated: false) .navigationController?.pushViewController(objC, animated: false)

编辑

        let navigationController = UINavigationController(rootViewController: baseVc)
navigationController.pushViewController(logbookVc, animated: false)
navigationController.pushViewController(detailVc, animated: false)

self.window?.rootViewController = navigationController
self.window?.makeKeyAndVisible()

重要提示:

使用驼峰命名法创建对象名称,以确保正确的可读性。例如 let BaseVc 应该是 let baseVc 并且对于 logbookVcdetailVc

尝试并分享结果。

希望有帮助。

关于ios - 从推送通知打开 View Controller 时如何管理 View 层次结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51521590/

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