如何使用 PrepareForSegue 方法在接收控制器中传输具有未知类型的对象?

How to use the PrepareForSegue method to transfer an object which has an unknown type in the receiving controller?

我在 Swift 从事 Xcode 个项目,我正在尝试将数据从“FirstViewController”传输到“SecondViewController”。

首先,我在 FirstViewController 中收到了我的用户发送的一些数据。我制作了一个结构,将所有这些数据放在一个我尝试传输的对象中。

这是我的代码:

override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
        if segue.identifier == "goToSecondViewController" {
            let sentData:typeOfMyStrcuture = myObject()
            let secondVC = segue.destination as! SecondViewController
            secondVC.sentData = sentData
        }
    } 

在我的 SecondViewController 中我有:

var sentData: typeOfMyStructure!

问题是:由于我发送的对象的类型在我的 SecondViewController 中是未知的,所以我收到以下错误:“在范围内找不到类型 'typeOfMyStructure'”。 我试图在我的 SecondViewController 中编写相同的结构以使其识别类型,但我收到此错误:“无法将类型 'FirstViewController.typeOfMyStructure' 的值分配给类型 'SecondViewController.typeOfMyStructure'

预先感谢您的宝贵帮助!

两个选项:

  1. 如果 typeOfMyStructure 在第一个视图控制器中创建,在第二个视图控制器中声明

    var sentData: FirstViewController.typeOfMyStructure!
    
  2. 在任何视图控制器之外声明typeOfMyStructure

旁注:请以大写字母

命名结构和 类