繁体   English   中英

UINavigationController推送视图后显示黑屏

[英]UINavigationController shows black screen after pushing a view

我有一个故事板应用程序,带有导航控制器和两个视图控制器(“ A”,“ B”)。

在情节提要板文件中:Navigationcontroller是初始视图控制器。 视图控制器“ A”作为根控制器连接到Navigationcontroller。 视图控制器“ B”在情节提要中,但未连接到任何视图控制器。

当我以编程方式尝试通过以下操作将视图控制器“ B”从内部视图控制器“ A”推入导航控制器时:

B *controllerB = [[B alloc] init];
[self.navigationController pushViewController:controllerB animated:YES];

我所得到的只是向黑屏的过渡。

我在运行时检查了视图控制器A中的navigationController属性,它不是nil。 我自己没有实例化navigationController,我让情节提要板完成了工作(也许就是问题所在)。 但是我认为应该可以“手动”将视图控制器推到故事板创建的导航控制器上。

当我将情节从按钮连接到情节提要中的“ B”时,一切正常。 仅以编程方式它不起作用,仅在导航控制器内部显示黑屏。

也许有人可以帮助我解决这个问题。

我还没有使用情节提要,所以这个答案是从文档看的。 看来您无法从情节提要中分配/初始化视图控制器。 您需要使用UIStoryboard实例的UIStoryboard instantiateViewControllerWithIdentifier:方法,然后可以推送控制器。

接受的答案对我不起作用。 我已经在使用instantiateViewControllerWithIdentifier导航到不同情节提要中的视图控制器。 我正在使用xcode7.2和Swift。

我正在从Storyboard1导航,这是一些视图控制器的按钮操作。 目的地是Storyboard2的初始导航控制器。
我仍然黑屏。

问题是故事板2的导航控制器链接到1st视图控制器通过show链接。

解:
删除导航控制器和第一个视图控制器之间的链接。 现在使用root view controller链接它。 (按住Ctrl键并单击“导航”控制器,然后将其拖动到“视图”控制器,然后选择“根视图控制器”选项)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM