如何在swift中将数据从一个tabbar传递到另一个tabbar?

时间:2016-03-07 08:21:13

标签: ios swift2 uitabbarcontroller uitabbar

我想将数据从一个tabBar控制器传递到另一个,

我正在使用tabBarController?.selectedIndex = 0

切换tabBar

我尝试了很多选项,但无法将数据传递到另一个标签,是否有任何简单的解决方案,比如我们使用导航控制器传递数据?

1 个答案:

答案 0 :(得分:0)

标签通常是一些自定义的UIViewControllers。从这些视图控制器(选项卡)中,您还可以使用以下内容访问UITabBarController:

if let mainController = UIApplication.sharedApplication().delegate?.window??.rootViewController as? YourMainTabBarControllerClass {
    mainController.someVariable = 123
}

这里你必须要小心,因为标签栏控制器可能不是rootViewController,有关详细信息,请参阅this question

为了在UITabBarController中存储一些属性,你必须通过扩展UITabBarController然后在StoryBoard中设置自定义类来实现自己的类。该课程将如下所示:

class YourMainTabBarControllerClass: UITabBarController {

    // some custom variables here...
    var someVariable = 0

    ...

}