所有选择区段之间有什么区别?

时间:2014-09-22 03:12:21

标签: ios ios8 xcode6 segue

  • 显示
  • 显示详细信息
  • 目前模态
  • Popover演示文稿
  • 定制

enter image description here

他们之间有什么区别?我无法找到任何文件。曾经有一些我在谷歌搜索中找到的,但它现在已经消失了:https://developer.apple.com/library/ios/recipes/xcode_help-interface_builder/articles-storyboard/StoryboardSegue.html

4 个答案:

答案 0 :(得分:507)

以下是segues的快速摘要以及每种类型的示例。

显示 - 将目标视图控制器推到导航堆栈上,从右向左滑动,提供返回按钮返回源 - 或者如果未嵌入导航控制器,它将是以模态呈现 示例:在Mail中导航收件箱/文件夹

显示详细信息 - 要在拆分视图控制器中使用,请在展开的2列界面中替换详细/辅助视图控制器,否则如果折叠为1列,则会推入导航控制器<登记/> 示例:在消息中,点击对话将显示对话详细信息 - 在两列布局中替换右侧的视图控制器,或在单列布局中推送对话

呈现模态 - 呈现由Presentation选项定义的各种动画时尚的视图控制器,覆盖前一个视图控制器 - 最常用于呈现从底部动画的视图控制器并覆盖在iPhone或iPad上的整个屏幕上,通常将其显示为居中的盒子,使呈现视图控制器变暗 示例:选择Touch ID&amp;设置中的密码

Popover演示文稿 - 在iPad上运行时,目标位于弹出框中,点击此弹出窗口以外的任何位置都会将其关闭,或者也支持iPhone弹出框,但默认情况下会显示目标模态在整个屏幕上 示例:点击日历

中的+按钮

自定义 - 您可以实施自己的自定义segue并控制其行为

不推荐的segues本质上是上述那些的非自适应等价物。 iOS 8中不推荐使用这些segue类型:Push,Modal,Popover,Replace。

有关详细信息,您可以阅读Using Segues documentation,其中还介绍了segue的类型以及如何在Storyboard中使用它们。另请参阅2014年WWDC会议216 Building Adaptive Apps with UIKit。他们讨论了如何使用这些新的自适应网段构建自适应应用程序,并且他们构建了一个利用这些网段的演示项目。

答案 1 :(得分:129)

为了清楚起见,我想用这些GIF来说明@ Joey的上述答案:

显示

enter image description here

显示详细信息

enter image description here

目前模态

enter image description here

呈现为Popover

enter image description here

答案 2 :(得分:22)

该文件似乎已移至此处:https://help.apple.com/xcode/mac/8.0/#/dev564169bb1

无法在此处复制图标,但以下是说明:

  
      
  • 显示:根据屏幕内容在详细信息或主区域中显示内容。

         

    如果应用程序显示主视图和详细视图,则会将内容推送到详细信息区域。如果应用程序仅显示主数据或详细信息,则内容将被推送到当前视图控制器堆栈的顶部。

  •   
  • 显示详细信息:在详细信息区域中显示内容。

         

    如果应用程序显示主视图和详细视图,则新内容将替换当前详细信息。如果应用程序仅显示主数据或详细信息,则内容将替换当前视图控制器堆栈的顶部。

  •   
  • 目前模态:以模态方式展示内容。

  •   
  • 作为Popover显示:将内容显示为锚定到现有视图的弹出窗口。

  •   
  • 自定义:使用自定义segue创建自己的行为。

  •   

答案 3 :(得分:0)

对于那些喜欢更多实践性学习的人,请在Dock中选择segue,打开属性检查器,然后在不同种类的segue之间切换(下拉式“ Kind”)。这将显示针对每个选项的特定选项:例如,您可以看到“模态呈现”允许您选择过渡类型等。