gpt4 book ai didi

ios - 在 Swift 中以编程方式从主 TabBarController 转到嵌套的 ViewController

转载 作者:搜寻专家 更新时间:2023-11-01 06:12:10 25 4
gpt4 key购买 nike

我有以下 ViewController 结构,请参见下图。

每当我想从 ViewController 1 移动到我使用的任何其他主 Controller 时 self.tabBarController?.selectedIndex = indexNumber

// for instance, this would take me to ViewController 3
self.tabBarController?.selectedIndex = 2

根据下图,当在 ViewController 1 中点击按钮时,如何以编程方式从 ViewController 1 转到 TargetViewController

仅供引用 -在下图中,我在 ViewController 3 中显示了一个按钮,这只是为了显示 Storyboard结构,实际的按钮点击将发生在 ViewController 1

enter image description here

编辑:

根据 Prashant Tukadiya 的回答,这是您的做法。

View Controller 1

ViewController 1 的点击事件中添加以下内容。

    self.tabBarController?.selectedIndex = 2
let nav = (self.tabBarController?.viewControllers?[2] as? UINavigationController)
let vc = TargetViewController.viewController()
nav?.pushViewController(vc, animated: true)

目标 View Controller

  1. 在您的 TargetViewController 中添加以下类方法。

    class func viewController() -> TargetViewController { let storyboard = UIStoryboard(name: "Main", bundle: nil) 返回 storyboard.instantiateViewController(withIdentifier: "targetViewControllerID") 作为!目标 View Controller }

  2. 在 Storyboard ID 字段中添加 targetViewControllerID

最佳答案

几天前我也遇到过同样的问题,最后我找到了解决方案,也许这会对你有所帮助。

    TabController.shared.tabcontroller.selectedIndex = 1
let navigation = TabController.shared.tabcontroller.selectedViewController?.navigationController

let SavedAddress = self.storyboard?.instantiateViewController(withIdentifier: "SavedAddressVC") as! SavedAddressVC
navigation?.pushViewController(SavedAddress, animated: true)

我用过同样的解决方案。这是我的工作代码。

关于ios - 在 Swift 中以编程方式从主 TabBarController 转到嵌套的 ViewController,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53633230/

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