gpt4 book ai didi

ios - 在 SWIFT 中的不同 View 之间切换

转载 作者:行者123 更新时间:2023-11-29 01:32:28 33 4
gpt4 key购买 nike

我在堆栈溢出社区中阅读了很多关于在不同 ViewController 之间切换的问题/答案,但我找不到适合我的特定问题的正确答案。

  1. 我正在使用 NavigationViewController 来“连接”我所有不同的 viewController(ViewController/TableViewController/CollectionViewController)

  2. 我有一些不依赖于 ViewController 类的类。例如,在我的“计算”类中计算任何内容。

我正在寻找一个简单的解决方案,以便在我的所有 ViewController 之间切换。我想在我的“计算”类(class)中做出决定,例如在我的 Navigation ViewController 中后退一步。

在我使用它的那一刻:

  1. 在两个不同的 ViewController 之间切换的示例:

    let sb = UIStoryboard(name: "Main", bundle: nil)
    let vc = sb.instantiateViewControllerWithIdentifier("StartPage") as! StartPageView
    self.presentViewController(vc, animated: true, completion: nil)

问题:此示例仅适用于 ViewController 类,并且导航栏消失了。

  1. 在我的 NavigationViewController 中后退一步的示例:

    self.navigationController?.popViewControllerAnimated(true)

问题:此示例仅适用于 ViewController 类。

编辑 1:

我找到了一个很好的解决方案,可以用这部分代码调用我所有的 viewController:

    let switchViewController = self.navigationController?.viewControllers[1] as! ScanTableView
self.navigationController?.popToViewController(switchViewController, animated: true)

如何在非 ViewController 类中调用此代码?

最佳答案

将新的 View Controller 推送到您现有的导航堆栈上,而不是以模态方式呈现它:

let vc = self.storyboard!.instantiateViewControllerWithIdentifier("StartPage") as! StartPageView
self.navigationController!.pushViewController(vc, animated: true)

关于ios - 在 SWIFT 中的不同 View 之间切换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33314396/

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