当我使用故事板连接push segue时,从视图控制器到导航控制器,当我尝试在那里导航时应用程序崩溃,错误控制台显示: '推送segues只能在源控制器由UINavigationController实例管理时使用。'
如何在这两个控制器之间进行切换(不使用模态)。
我想要转向的导航控制器由标签栏控制器管理。
答案 0 :(得分:0)
好的,这里有一些问题。让我们从你得到的错误开始。
源控制器似乎没有与之关联的UINavigationController
。在您的故事板中,我将单击源视图控制器,然后单击“编辑器”菜单> “嵌入”> “导航控制器”。这将确保源控制器现在由导航控制器管理。
在你这样做之后,你可能仍会遇到崩溃或某些错误。您不能将UINavigationController
推送到现有导航控制器堆栈。
我会后退一步,看看你在这里想要完成的事情。如果您只是希望标签栏消失,那么您可以选中“按下时隐藏底栏”,然后当您按下视图控制器时,它看起来就像是推动了一个全新的导航控制器。
否则我会质疑为什么你要推动而不是模态。在呈现新的导航堆栈时,通常的做法是将堆栈呈现为模态。就个人而言,尝试在现有堆栈中呈现新堆栈感觉不对。