2010-03-09 91 views
-1

我正在爲iPhone應用程序設計UI。如何將UIView對象放置在導航ViewController上?如何在導航視圖控制器上放置視圖?

假設viewObj是UIView對象,而uiNavControllerObj是Navigation controllet對象?將viewObj放置到uiNavControllerObj上的語法是什麼?

UIView* viewObj; 
NavigationController* uiNavControllerObj; 

編輯問:

Can i achieve this by this syntax? 
uiNavControllerObj.view = viewObj;// is this the proper way to achieve 
[rootviewObj addSubview:uiNavControllerObj.view]; 
[uiwindowObj addSubview:rootViewObj]; 
+0

是否正確 uiNavController.view = viewObj; – suse 2010-03-09 13:21:09

回答

1

UINavigationControllers不UIViews處理,他們處理UIViewControllers。

典型用法如果UIViewController中是根(第一)視圖控制器:

MyRootViewController *myRootViewController = [[MyRootViewController alloc] init]; 
UINavigationController *navController = [UINavigationController initWithRootViewController:myRootViewController]; 

UINavigationController的使用堆棧,以保持它管理的ViewControllers的軌道。如果你要推另一壓入堆棧(例如,通過表視圖控制器下鑽),你會從視圖控制器內做堆​​棧的頂部,例如:

AnotherViewController *anotherController = [[AnotherViewController alloc] init]; 
// every view controller has a reference to it's Navigation Controller 
[self.navigationController pushViewController:anotherController]; 

另外,我因爲你的問題不是很清楚,你可以用一個Modal View控制器覆蓋導航控制器。除此之外,我不確定通過在導航控制器上放置一個視圖,您還有什麼意思。

+0

你好bpapa,謝謝你的回覆,我的意思是,我創建了一個窗口對象[uiWindowObj],並且我將uiNavControllerObj [ViewController]作爲子視圖添加到rootViewObj [類型爲UIView]並將一個rootViewObj作爲子視圖添加到窗口。然後我創建了一個viewObj [UIView],我想將它作爲子視圖添加到uiNavControllerObj中。 我已經在上面的章節中編寫了代碼。編輯的問題。我可以通過這樣做來達到目的。語法是否正確? – suse 2010-03-10 03:26:11

+0

沒有這樣的NavigationController類型。它是UINavigationController。添加視圖的方式在我的答案中。看看這更多:http://developer.apple.com/IPhone/library/documentation/UIKit/Reference/UINavigationController_Class/Reference/Reference.html – bpapa 2010-03-10 04:14:23

相關問題