2015-04-08 62 views
0

在我的應用程序中提到用2個翼片TAB1和tab2.And標籤欄控制器具有根視圖導航視圖控制器每個標籤controllers.And我的方案是如下面如何瀏覽navigationcontroller rootviewcontrollr子視圖控制器

tab1 - > viewcontroller1 (navigationcontroller rootviewcontroller) - > viewcontroller2。

所以,現在我想直接從應用程序委託移動到視圖controller2.How是可能的。

我在應用程序委託中做了這樣的一個。但它正在轉向viewcontroller1。

UIStoryboard *mainStoryboard = [UIStoryboard storyboardWithName:@"Main" 
                 bundle: nil]; 
self.tabbarController = [mainStoryboard instantiateViewControllerWithIdentifier:@"tabbarcontroller"]; 
[self.tabbarController setSelectedIndex:1]; 
viewcontroller2 *view =(viewcontroller2 *) [mainStoryboard instantiateViewControllerWithIdentifier:@"view2"]; 

[self.tabbarController.navigationController pushViewController:view animated:YES]; 
self.window.rootViewController=self.tabbarController; 
+0

你可以把viewcontroller2作爲navigationController的頂視圖? – Jakehao

+0

在appDelegate - >做完選項時彈出:Splash * vc2 = [[Splash alloc] initWithNibName:@「Splash」bundle:nil]; self.navigationController = [[UINavigationController alloc] initWithRootViewController:vc2]; –

+0

setSelectedIndex:2我認爲它會移動到第二個視圖控制器 –

回答

0
Tab1 -> Viewcontroller1(navigationcontroller rootviewcontroller) -> Viewcontroller2 

我已經用這種方法有時

UIStoryboard *mainStoryboard = [UIStoryboard storyboardWithName:@"Main" 
                 bundle: nil]; 
self.tabbarController = [mainStoryboard instantiateViewControllerWithIdentifier:@"tabbarcontroller"]; 
[self.tabbarController setSelectedIndex:1]; 
viewcontroller1 *view1 =(viewcontroller1 *) [mainStoryboard instantiateViewContro1llerWithIdentifier:@"view1"]; 
viewcontroller2 *view2 =(viewcontroller2 *) [mainStoryboard instantiateViewControllerWithIdentifier:@"view2"]; 

[self.tabbarController.navigationController pushViewController:view1 animated:NO]; 
[self.tabbarController.navigationController pushViewController:view2 animated:YES]; 

self.window.rootViewController=self.tabbarController; 
+0

我也對viewcontroller2做了同樣的事情。它是否適用於你?我需要直接從appdelegate移到viewcontroller 2。 –

+0

是的,但我和你的代碼之間有一點點區別,我已經推動viewController1第一,然後2。 – Retro

+0

我也像你一樣嘗試,但它顯示viewcontroller1.Directly我想顯示viewcontroller 2. –