2011-10-26 52 views
0

當您通過界面創建標籤欄控制器而不是編程式時,您沒有標籤欄控制器類。在這種情況下,如何從視圖控制器移動到此標籤欄控制器?從視圖控制器移動到標籤欄控制器

+0

我不明白這個問題......你想知道如何從其子視圖控制器的代碼訪問標籤欄控制器? – ayoy

+0

不,我有一個視圖控制器出現在標籤欄控制器出現之前。所以基本上我想要的理想程序結構是視圖控制器 - >視圖控制器 - > tabbarcontroller(它有兩個子視圖控制器) – CodeGeek123

+0

而你正在導航控制器中顯示你的視圖控制器? – ayoy

回答

1

您可以嘗試先創建標籤欄控制器。然後以模態方式顯示全屏幕啓動畫面(例如,沒有動畫,以便用戶不會注意到標籤欄控制器),並關閉您顯示位置選擇器的啓動畫面。一旦用戶完成它,你就會關閉兩個顯示選項卡控制器的模式控制器。

如果您需要根據您從位置選擇器獲得的信息在標籤欄控制器中設置視圖控制器,您可以執行通過委託,那就是:

  1. 實現用於啓動畫面和位置選擇委託
  2. 實例化的標籤欄控制器
  3. 顯示初始屏幕,設置選項卡欄控制器的當前VC初始屏幕
  4. 的委託
  5. 顯示位置選擇器,將其代表設置爲相同的視圖控制器(您將在初始屏幕中顯示手柄)
  6. 一旦用戶關閉位置選擇器,您就可以通知代表它可以從位置選擇器收集所需的數據。

我希望它有幫助。

1

起初讓那麼tabbarcontroller使UIView的控制器......比如......

NSMutableArray *listOfViewControllers = [[NSMutableArray alloc] init]; 

     tab1view = [[tab1viewcontroller alloc] initWithNibName:@"tab1viewcontroller" bundle:nil]; 
     [listOfViewControllers tab1view]; 
     [tab1view release]; 

     tab2view = [[tab2viewcontroller alloc] initWithNibName:@"tab2viewcontroller" bundle:nil]; 
     [listOfViewControllers tab2view]; 
     [tab2view release]; 

     [self.tabBarController setViewControllers:listOfViewControllers animated:YES]; 

我認爲這將幫助你。

相關問題