我正在为iPhone应用程序设计UI。我应该如何在导航ViewController上放置UIView对象?
假设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 :(得分:1)
UINavigationControllers不处理UIViews,它们处理UIViewControllers。
如果你的UIViewController是根(第一个)视图控制器的典型用法:
MyRootViewController *myRootViewController = [[MyRootViewController alloc] init];
UINavigationController *navController = [UINavigationController initWithRootViewController:myRootViewController];
UINavigationController使用堆栈来跟踪它管理的ViewControllers。如果你想将另一个推入堆栈(例如,向下钻取表视图控制器),你可以在堆栈顶部的View Controller内部这样做:
AnotherViewController *anotherController = [[AnotherViewController alloc] init];
// every view controller has a reference to it's Navigation Controller
[self.navigationController pushViewController:anotherController];
或者,我只是因为您的问题不是很清楚,您可以使用模态视图控制器覆盖导航控制器。除此之外我还不确定通过将视图“放在”导航控制器之上还有什么意思。