Swift:将数据传递给 segue
Posted
技术标签:
【中文标题】Swift:将数据传递给 segue【英文标题】:Swift: pass data to a segue 【发布时间】:2017-06-02 15:41:37 【问题描述】:我想根据我按下的按钮来改变我的 segue 行为。两个按钮都打开了 sam VC,但通过了不同的颜色和更多的信息。但我也想在打开第二个 VC 时更改动画。
按照教程,我使用 CustomSegue 类制作了 CustomSegue.swift:UIStoryboardSegue。在那个课程中,我有我的动画功能,我想改变视图的显示方式(从左到右)。为此,我需要知道按下了哪个按钮来更改参数。
如何让我的自定义 segue 类知道按下了哪个按钮?
【问题讨论】:
一种可能的解决方案是为按钮分配不同的标签并将按钮传递为sender
我如何才能访问 CustomSegue 类中的发件人?
您调用performSegue
,然后框架调用prepareForSegue
,您可以在执行转换之前进行设置。
我已经做到了。问题是,除了将数据从一个 VC 传递到另一个 VC 之外,我还想将数据传递给我的 segue 类。因为我一直在关注动画 VC 外观的教程,所以我需要制作一个继承自 UIStoryboardSegue 的新 CustomSegue。动画在那里执行,我需要一些数据,而不是在第二个 VC 中
您没有提到问题是关于自定义类的。我不知道那个类是做什么的。
【参考方案1】:
我现在已经能够自己解决了。通过在我的第一个 VC 的 prepare() 函数中将数据发送到我的自定义类。现在我可以发送按下哪个按钮的信息。我想用它,你需要在两个VC之间建立连接,但是看起来它也可以用来在两个类之间发送数据。
【讨论】:
以上是关于Swift:将数据传递给 segue的主要内容,如果未能解决你的问题,请参考以下文章
Swift segue 不会将数据传递给旧的 ViewController
在函数内将数据传递给 segue.destination 的问题
Swift:如何将数据传递给嵌入在 ContainerView 中的 PageViewController?