将UINavigationController添加到iPhone的子视图中

3

我一直在尝试将这个UINavigationController添加到我的表单的子视图中...但是我得到的只是一个大的灰色屏幕。

LiteViewController *lite = [[LiteViewController alloc] initWithNibName:@"LiteViewController" bundle:nil];
[self.view addSubview:lite.navigationController.view];

它应该在当前视图中添加一个全屏导航控制器。
2个回答

1
我找到了一篇帖子,UINavigationController not showing the Root View controller,对我很有用。
基本上你还需要设置navigationController的视图...
[self.view addSubview:navigationController.view];
[navigationController setView:[[navigationController.viewControllers objectAtIndex:0] view]];

0
你可能需要调用makeKeyAndVisible方法。

据我理解,窗口是可见的,因为我可以将其他内容添加到子视图中并且它可以正常工作...只是这个导航控制器让我头疼。 - Dave C
我刚开始学习iPhone开发,但是我看到的所有示例都直接将导航控制器添加到UIWindow而不是UIView中。也许,鉴于此控件的全屏性质,它想要被添加到窗口中?在这里也可以查看苹果的文档:http://developer.apple.com/iphone/library/featuredarticles/ViewControllerPGforiPhoneOS/NavigationControllers/NavigationControllers.html#//apple_ref/doc/uid/TP40007457-CH103-SW1 - Joost Schuur

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接