2014-05-21 33 views
1

我正在研究一個應用程序,該應用程序以前將各種UI片段分隔爲不同的故事板。由於應用程序的複雜性,這是爲了組織目的。但現在導航模型正在切換到標籤欄控件。如何將選項卡欄控件放置到目標不同的故事板

我遇到的問題是,每個標籤欄按鈕的目標需要從單獨的故事板加載視圖控制器(及其所有相應的視圖)。標準選項卡欄模型(下)不適用於此場景。

當點擊一個標籤欄按鈕時,是否可以繼續播放到不同的故事板視圖控制器?

Tab Bar navigation

+0

我不認爲這是可能的Interface Builder中做到這一點。我相信你可以在代碼中加載視圖控制器,並使用'setViewControllers:animated:'或'viewControllers'屬性手動將它們添加到UITabBarController – Taum

回答

2

您可以保留當前的設置與剛剛成立的TabBar的navigationControllers離開他們各自的故事板內的其他viewControllers。然後,您可以實例化故事板並在代碼中設置導航控制器視圖控制器。

事情是這樣的:

UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"yourStoryboardName" bundle:nil]; 
YourViewController *viewController = [storyboard instantiateViewControllerWithIdentifier:@"yourViewControllerIdentifier"]; 
UINavigationController *navController = (UINavigationController*) [YourTabBarController.viewControllers objectAtIndex:0];//Or whatever tab index 
navController.viewControllers = @[viewController]; 
相關問題