【发布时间】:2014-01-29 16:25:07
【问题描述】:
这是我在 Stackoverflow 上的第一篇文章。我是 iOS 开发的新手,我搜索并尝试了很多(两天多),但我真的坚持做应该非常简单的东西。
我有一个主视图(全尺寸 iPhone 视图)。在该视图中,我想要一个较小尺寸的子视图(例如 290 x 400)。此子视图必须嵌入到导航控制器中。换句话说:我想在这个子视图的顶部有一个工作导航栏。
我使用容器视图在 Storyboards 中构建了它。那里没问题。但是,我只想在代码中执行此操作。我成功地用代码制作了一个基于导航控制器的应用程序。我还成功地编写了一个带有子视图控制器的应用程序。问题似乎是结合了这些。
当我尝试在其中一个子视图控制器中加载导航控制器时,应用程序崩溃并说 SubView 视图控制器必须将 Container 视图控制器作为父级,但它现在将 UINavigationcontroller 作为父级。
之后我尝试直接在子视图中加载导航控制器,如下所示:
SubViewVC *subviewcontroller = [[SubVC alloc] initWithNibName:@"SubVC" bundle:nil];
UINavigationController *navController = [[UINavigationController alloc] initWithRootViewController:subviewcontroller];
[navController setView:subviewcontroller.view];
[self.view addSubview:subviewcontroller.view];
但是,现在我遇到了一个崩溃,提示视图一次只能与一个控制器关联。子视图与 SubViewVC 相关联。在将其与 UINavigationcontroller 关联之前,必须清除它。
我了解问题,但不知道如何解决。任何帮助深表感谢。
【问题讨论】:
标签: ios iphone view uinavigationcontroller containers