在视图控制器之间传递 iOS 10 Segue 中的数据 [重复]

Posted

技术标签:

【中文标题】在视图控制器之间传递 iOS 10 Segue 中的数据 [重复]【英文标题】:Passing data in an iOS 10 Segue between view controllers [duplicate] 【发布时间】:2017-01-12 18:43:49 【问题描述】:

我在我的视图控制器中创建了一个 UIBarButtonItem。在我的 Storyboard 中,我控制单击了 UIBarButtonItem 并将其拖动到新的视图控制器,当我单击 UIBarButtonItem 时,该控制器将新的视图控制器推入导航堆栈。

我的问题是当我单击按钮时,我想在视图控制器数据呈现之前传递它。我不完全确定我是否应该放弃故事板来实现这一点并处理代码中的所有内容,或者是否有办法覆盖某些方法来促进这一点?

【问题讨论】:

【参考方案1】:

查看prepare(for: UIStoryboardSegue)。您可以在调用视图控制器中覆盖它并在此处访问目标视图控制器。

override func prepare(for segue: UIStoryboardSegue, sender: Any?) 
    if segue.identifier == "MySegue",
        let destinationViewController = segue.destination as? DetailViewController
        destinationViewController.object = selectedObject
    

【讨论】:

以上是关于在视图控制器之间传递 iOS 10 Segue 中的数据 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

iOS - 如何在通过手动 Segue 链接的两个视图控制器之间传递信息?

通过 segue 在视图控制器之间传递数据

如何在不使用 segue 的情况下在视图控制器之间传递图像

使用 segue 在 View Controller 之间传递变量

iOS Swift 使用 Segue 在 vi​​ewController 之间传递变量

iOS希望在按下按钮时延迟视图控制器之间的segue