Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xcode/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 当segue样式从Push更改为Modal时,目标场景中的UINavigationItem将消失_Ios_Xcode_Cocoa Touch - Fatal编程技术网

Ios 当segue样式从Push更改为Modal时,目标场景中的UINavigationItem将消失

Ios 当segue样式从Push更改为Modal时,目标场景中的UINavigationItem将消失,ios,xcode,cocoa-touch,Ios,Xcode,Cocoa Touch,对于UINavigationController场景之间的序列,为什么将序列样式从Push更改为Modal会导致目标场景上的UINavigationItem从IB和内置应用程序中消失?有趣的是,UINavigationItem仍然在IB层次结构中 如何获得目标场景中仍然可见的UINNavigationItem的模式序列?我正在尝试做一些看起来很简单的事情,比如iPhone联系人应用程序中的编辑功能。在这里,联系人编辑时会出现一个模式,您可以在编辑完成后导航回联系人详细信息。如果您演示的是一个模式

对于
UINavigationController
场景之间的序列,为什么将序列样式从
Push
更改为
Modal
会导致目标场景上的
UINavigationItem
从IB和内置应用程序中消失?有趣的是,
UINavigationItem
仍然在IB层次结构中


如何获得目标场景中仍然可见的
UINNavigationItem
的模式序列?我正在尝试做一些看起来很简单的事情,比如iPhone联系人应用程序中的编辑功能。在这里,联系人编辑时会出现一个模式,您可以在编辑完成后导航回联系人详细信息。

如果您演示的是一个模式视图控制器,它将没有显示在显示控制器中的导航栏(假设导航控制器中嵌入了导航栏)。联系人应用程序中的顶部栏可能是
UIToolbar
(“对象库中的工具栏”)。您可以将其中一个拖动到控制器中,并在IB中向其中添加条形按钮项。这些按钮有许多不同的样式可供选择,包括“完成”和“取消”。

任何视图控制器都可以有导航项,但它仅在视图控制器嵌入导航控制器时显示。模态视图控制器不继承显示它们的视图控制器的导航控制器——本质上,它们表示用户通过应用程序路径中的一个分支,而不是它们来自的导航堆栈的扩展

如果您想要导航控制器在模态视图控制器中提供的内容,请将该VC嵌入导航控制器中,并以模态方式呈现该导航控制器


(或者,如果您只想在视图顶部显示导航栏,而不关心从
UINavigationController
中获得的其他内容,您可以将
UINavigationBar
(对象库中的导航栏)放入IB中的视图中。)

哦,我明白了。非常感谢。这是因为从逻辑上讲,模态序列不是“导航”事件吗?@dimadima,我想这取决于你如何定义“导航”。在更广泛的意义上,它可能是,但它没有使用导航控制器,所以在这个意义上,它不是。令人兴奋!“如果您想要导航控制器在模态视图控制器中提供的内容,请将该VC嵌入到导航控制器中,并以模态方式呈现该导航控制器。”因为,当您“以模态方式呈现导航控制器”时,也会呈现其堆栈上的所有VC,对吗?有点。。。您正在演示导航控制器,因此无论显示什么VC,都将显示在模式“窗口”中。每个模态表示都可以有自己的导航堆栈。你可以在Apple应用程序中看到这一点:你可以在邮箱中向下搜索邮件中的消息线程,在导航堆栈中的任何位置,你都可以启动一条新消息,它显示一个模式VC,在“撰写”视图中,你可以按+按钮从联系人中添加收件人--这是另一个模式VC,包含导航控制器,可让您深入到联系人并选择其电子邮件地址。