2016-03-07 45 views
0

我想從一個的TabBar控制器傳遞到另一個數據,如何在swift中將數據從一個tabbar傳遞到另一個tabbar?

我切換使用tabBarController?.selectedIndex = 0

我試過很多選項,但無法將數據傳遞到另一個選項卡的TabBar,有沒有簡單的解決辦法像我們傳遞數據使用導航控制器?

+0

您可以隨時使用NSNotificationCenter將數據發送到任何地方。你有沒有考慮使用它? –

+0

是的,通知和nsuserdefault是方式,但認爲應該有另一種方式來做到這一點 – sss

+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 

    ... 

} 
相關問題