2014-02-11 37 views
0

我有一個TabBar有3個按鈕,第2和第3個按鈕有一個segue到同一個控制器,它應該根據一個參數顯示不同的信息。添加參數到TabBar Storyboard segue

enter image description here

我重寫TabBar類implement.-

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender; 

能夠公正執行SEGUE之前加我PARAM,但我必須失去了一些東西明顯,因爲prepareForSegue不被叫。

有沒有辦法實現這個沒有以編程方式創建自定義賽格?

+0

你確定它沒有被調用嗎?這聽起來很不尋常。 – 68cherries

+0

我沒有測試這個,但也許重寫tabBar:didSelectItem:在你的UITabBarDelegate幫助。你的UITabBarDelegate可能是你的UITabBarController。 – Nero

+0

可以直接在TabBar類的'viewDidLoad'中做。迭代'viewControllers'並根據需要配置它們? –

回答

2

根據我的說法,您不能與作爲「根」控制器鏈接的segue進行交互。 那些segue不是「被調用」,因爲它們不代表兩個視圖控制器之間的轉換。

如果你看看Interface Builder,那裏沒有可用的設置。

我在我的項目中有一個類似的問題,並通過編程設置控制器來解決問題。之後,您將視圖控制器添加到故事板中,並在右側面板中設置「故事板ID」。

然後,你可以通過做

[self.storyboard instantiateViewControllerWithIdentifier:@"YOUR_VIEW_CONTROLLER_ID"]; 

實例化視圖控制器並通過這樣

[self setViewControllers:viewControllers]; 

希望這有助於他們影響到你的UITabBarController!

+0

謝謝@foOg,而不是我一直在尋找的解決方案,但我會牢記這是最後一個資源。 – ssantos

+0

我很好奇,如果你找到更好的解決方案:) – foOg

0

不知道這是最好的做法,但我終於結束了從我controllers.-

self.tabBarController.selectedIndex 

這種簡單的方式獲取所選擇的選項卡,我知道我應該表現出什麼樣的信息,而不會改變我的storyboard segues

相關問題