如何执行从视图容器到另一个外部视图的转场?

Posted

技术标签:

【中文标题】如何执行从视图容器到另一个外部视图的转场?【英文标题】:How to perform a segue from a view container to another external view? 【发布时间】:2019-08-19 08:48:52 【问题描述】:

我有一个包含不同视图控制器的视图容器,当用户按下按钮时,视图在容器内发生变化,父视图保持不变。我需要从容器管理的一个视图到另一个外部视图执行 segue,所以我需要更改父视图。如果我使用故事板中的普通 segue 视图,它将显示在容器中,我该如何更改它以便父视图可以更改?

【问题讨论】:

一个容器是一个容器视图吗?您正在将该容器嵌入到一个超级视图控制器中? 是的,我有一个带有管理一些子视图的容器的超级视图,我需要从其中一个子视图到父级同一级别的外部视图 一种方法是您可以向父视图发送委托以执行转场。另一方面,只有当我能看到你的代码时,我才能帮助你。 【参考方案1】:

如果父视图是UIViewController,那么您可以通过以下方式打开视图:

self.present(viewController: externalView)

来自父视图控制器。

【讨论】:

【参考方案2】:

你可以参考父视图控制器来使seguelike这个。

self.parent?.performSegue(withIdentifier:"idetnitifier" , sender: selectedUser)

更改您的 segue 标识符以匹配您的,并且发件人可以是 nil 或任何?

【讨论】:

以上是关于如何执行从视图容器到另一个外部视图的转场?的主要内容,如果未能解决你的问题,请参考以下文章

无法执行转场

如何将标签栏项目中的项目链接到另一个视图控制器

如何将触摸事件从一个视图传递到另一个视图

故事板 - 如何为特定视图制作转场

如何在 iOS 5 中执行与用户输入无关的转场?

如何以编程方式创建展开转场[重复]