ios - 在 UINavigationController[1] 中的 tabBar[1] 中转换一个 viewController

标签 ios uinavigationcontroller swift uitabbarcontroller segue

假设我在 TabBar.viewController[1] 上有一个 UINavigationController,例如 ->

let nav:UINavigationController = self.tabBarController.viewControllers[0] as UINavigationController

UITableViewControllerNavigationController.viewController[1] 就像 ->`

let mvc = nav.viewControllers[0] as UITableViewController

如果该表中存在模态转场怎么办,如何在不转场的情况下转换该转场 viewController 以在该 View 中设置某些内容

如果有人可以将我的问题编辑得更清楚,我们将不胜感激:)

* 更新 *

我需要在没有 segueing 的情况下这样做,因为在模态 segue 之后可能会有多个 ViewController 出现所以我想在做任何 segue 之前设置(这就像在 tabBar viewControllers 之间设置委托(delegate)所以我们转换而不移动到另一个TabBar 中的 ViewController)

可能是这样的

let nav = self.tabBarController.viewControllers[1] as UINavigationController
let mvc = nav.viewControllers[1] as UITableViewController // but compiler crash `Array index out of range`
let something else to hold that ViewController from the nav

最佳答案

您只需使用 segue 的 destinationViewController 属性。

var customController =  segue.destinationViewController as YourControllerClass
customController.delegate = self

关于ios - 在 UINavigationController[1] 中的 tabBar[1] 中转换一个 viewController,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25590058/

相关文章:

ios - 如何减慢 UINavigationController 向后滑动动画的速度?

ios - 快速在导航栏下添加进度条?

ios - 如何知道 Firebase 是否已获取值

ios - 以 UInt8 数组作为值的 Swift 字典

ios - 将repeatCount设置为1e100f会发出警告

ios - AVPlayer 在添加缩略图时监听

ios - 我无法在模拟器上登录沙箱用户 - 通行证/用户不正确

javascript - WebView 变白/空白

ios - 通过 Storyboard 上的按钮连接导航 Controller 崩溃应用程序

swift - 为什么它总是只显示第一个警报?