故事板中的 Segues 问题

Posted

技术标签:

【中文标题】故事板中的 Segues 问题【英文标题】:Issue with Segues in Storyboard 【发布时间】:2020-02-06 23:57:16 【问题描述】:

我在 swift 中遇到了 segues 的问题。在图片中,我举了一个我遇到的问题的例子;基本上我在视图控制器中制作了一个按钮,并通过 segue 将其链接到下一个视图控制器。问题是当我进行segue时,视图控制器变成了一个“选项卡”,我想这是放置它的方式,并且在应用程序中,用户只需在水龙头上向下滑动即可返回到前一个视图控制器。 (如从图 1 到图 2 的过渡所示)这是有问题的,因为如果用户在视图控制器之间来回切换按钮,它会使视图控制器的新实例相互堆叠,并开始延迟由于内存使用而设置。

我已经有一段时间没有进行 swift 编程了,但我记得当制作 segue 时,它​​只会从视图控制器转换而不会创建这些,我再次称它们为“选项卡”。有谁知道为什么会这样?

【问题讨论】:

View Controller Presentation Changes in ios 13; Presenting modal in iOS 13 fullscreen; iOS 13: Changes in the ViewController Presentation Style; 5 breaking changes to check before building your app for iOS 13 @MadProgrammer 非常感谢!花了大约一个小时,这是一个非常简单的解决方案。 【参考方案1】:

单击segue的路径,它将打开右侧窗格,打开属性检查器并在storyboard segue下更改“Kind”旁边的下拉菜单,然后将其更改为“显示(例如推送)”

供参考:

【讨论】:

【参考方案2】:

这是有问题的,因为如果用户在视图控制器之间来回切换按钮,它会使视图控制器的新实例相互堆叠,

如果发生这种情况,那是因为您的“返回”按钮配置不正确。您需要设置一个unwind segue,否则让返回按钮的操作处理程序调用dismiss

【讨论】:

如果您现在遇到堆积问题,那么您总是做错了。它与 iOS 13 中呈现的视图控制器 看起来 的方式无关。 是的,我现在才意识到这一点。

以上是关于故事板中的 Segues 问题的主要内容,如果未能解决你的问题,请参考以下文章

未反映在本地化故事板中的基本故事板更改

故事板中的 UITableView

在没有 Segues 的故事板之间传递变量 - Swift

iOS 故事板中的图像更改纵横比

故事板中 tableviewController 中的原型 tableview 单元格

故事板中的当前选项卡