如何在UITabBarViewController的代码中调用UIViewController中的内容?

时间:2015-04-10 08:28:19

标签: ios swift model-view-controller

我想在ViewController上调用一个方法(类型" MatchesViewController",这是我的TabBarViewControlleer的第三个标签上),如果所选项目不属于该类。

这是我的委托函数,用于在更改标签栏项目时进行监听。

override func tabBar(tabBar: UITabBar, didSelectItem item: UITabBarItem!) {

}

在此代码中,我想检测所选项目(及其视图控制器)的类型是否为" MatchesViewController"。如果它不是这种类型,那么在该控制器上调用方法。

1 个答案:

答案 0 :(得分:1)

为什么不使用tabBarController(_:didSelectViewController:)

override func tabBarController(tabBarController: UITabBarController,
   didSelectViewController viewController: UIViewController) 
{
    if !(viewController is MatchesViewController) {
        let matchesVC = tabBarController.viewControllers?[2] as MatchesViewController
        matchesVC.refresh()
    }
}