推送segue场景作品,莫代尔赛格场景不?

时间:2012-11-07 13:46:49

标签: iphone objective-c ios xcode

我手动调用push segue,效果很好。出现了新的TableView场景,导航控制器中的自定义导航按钮工作正常。

但是,我希望它是一个模态segue。因此,我将类型更改为Modal并将新场景嵌入到导航控制器中。新场景出现,但点击取消按钮时场景不会消失。

任何想法为什么?感谢。

1 个答案:

答案 0 :(得分:1)

推送 segue将新的视图控制器添加到导航堆栈中,其中还包含呈现视图控制器。这就是导航栏在这种情况下有效的原因。

模态 segue没有将视图控制器添加到导航堆栈,它将其添加为呈现视图控制器的子项,因此在这种情况下没有定义的导航。 / p>

如果您希望导航栏在模态控制的控制器上工作,您将不得不手动连接操作(例如:使" Back"按钮关闭模态控制的控制器)。

另外,正如@Edwin Iskandar所指出的那样,请确保在视图控制器上调用正确的解除操作,这意味着:popViewControllerAnimated不会在模态显示的视图控制器上工作,而是应该调用dismissModalViewControllerAnimated

P.S。:请注意,{6}已弃用dismissModalViewControllerAnimated,而不支持{6}的<{1}}