首页 > 解决方案 > *Swift iOS* UIViewController PUSH View 中的容器视图

问题描述

我有一个带有容器视图的 UIViewController。容器视图有一个导航控制器,我可以使用它在主视图中显示不同的场景。

结构:

MainVC
1SubVC (Container View) inside MainVC
2SubVC (ContainerView) inside MainVC

现在我的问题是:我可以从我的 MainVC 执行一个函数,以便 1SubVC 推送到 2SubVC 吗?

像->

class MainVC {
   1SubVC().doThisPushFunc()
}

谢谢!

标签: iosswiftxcode

解决方案


通过说“推送”,我假设您将使用 UINavigationController 并将视图控制器推送到导航堆栈上。使用 UINavigationController 类的主要原因是在推送到新视图控制器或需要顶部导航栏时具有有用的功能,例如动画。

如果您只是想从显示 1SubVC 转到 2SubVC,请替换容器视图。如果您想让 MainVC 通知 1SubVC 进行navigationController.pushViewController()调用,请访问 1SubVC() 的实例,以便您可以调用 push 方法,例如 MainVC 内部

    let oneSubVC = 1SubVC()
    oneSubVC.navigationController.pushViewController(ViewController(), true)

推荐阅读