Push Segue触发了一个模态Segue,导致VC没有导航栏

时间:2018-05-18 03:56:23

标签: ios swift uiviewcontroller uinavigationcontroller segue

我的结构是:

ViewController A [ - > (模态)]导航控制器 - > ViewController B [ - > (推)] ViewController C

换句话说:VC A有一个按钮,你推动对VC B进行模态转换(恰好嵌入在导航控制器中)。

然后在VC B中,单击一个表格视图单元格,这将触发一个推送到VC​​ C的segue。所有segues都是在故事板上制作的,并且标识符被恰当地命名。

问题是:当您单击从VC B转换到VC C的表格视图单元格时,转换会正确转到VC C,但它会像模式segue一样动画,而VC C没有导航栏(即使我专门设置navigationController?.isNavigationBarHidden = false)。因此,没有后退按钮。

出于调试目的,我在一个导航控制器中嵌入了VC A,并且从那里有一个按钮到一个带有推送segue的新VC并且发生了同样的事情(事情是过渡没有产生导航栏)。有什么想法可以解决这个问题吗?

编辑:VC设置的基本思路。注意,从VC A到VC B的segue是在代码中完成的。

VC Setup

2 个答案:

答案 0 :(得分:2)

要解决此问题,您需要将VC A中的模态segue连接到VC B的导航控制器。

答案 1 :(得分:0)

在VC A中你应该出现VC B的导航控制器。 然后在VC B(不是它的导航控制器)中你应该直接将segue连接到VC C而不需要为VC C嵌入导航控制器。 连接后你会回来按钮。