2010-08-14 52 views
1

我從蘋果給出的基於導航的模板創建了一個應用程序。現在我想添加第二個導航控制器到我的應用程序,包括一個新的UITableView。任何人都可以展示我如何做到這一點?謝謝!iPhone Sdk:如何添加第二個UINavigationController?

+0

你確定你想要一個新的導航控制器,而不是一個新的視圖控制器? – 2010-08-15 07:51:02

+0

是的,因爲我想創建一個全新的視圖heirachy。 – 2010-08-15 09:39:52

+0

是否要在工具欄或選項卡欄之間切換這些導航控制器?或者導航控制器應該出現在模態對話框中?或者第二個需要什麼? – Codo 2010-08-15 16:26:53

回答

1

我認爲這可以做到。在您的應用程序委託中,您通常會執行諸如 [window addSubview:navController.view]之類的操作。 UIWindow只是一個UIView。所以,如果你在UIViewController創建兩個UIView高德將包含兩個導航控制器,你應該可以做類似的事情:

@interface MyViewController : UIViewController 
{ 
    UIView* upperView; 
    UIView* lowerView; 
} 

等等

MyUpperRootViewController* myUpperRVC = [[MyUpperRootViewController alloc] init... 
UINavigationController* myUpperNavController = [[UINavigationController alloc] initWithRootViewController:myUpperRVC]; 
[upperView addSubview:navController.view]; 
[myUpperRVC release]; 

lowerView類似的東西。

在推送到控制器的根視圖或子視圖視圖中,以通常的方式訪問它們,就好像有一個導航控制器一樣。 [self.navigationController push...應該正常運作。

對於在視圖控制器中(和在外)動畫,只需將動畫應用於視圖 - upperView或lowerView。您可能希望從可見顯示中將其幀刪除,然後將其更改爲動畫塊中可見的內容。

相關問題