如何使用 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'
预先感谢您的宝贵帮助!
两个选项:
如果 typeOfMyStructure
在第一个视图控制器中创建,在第二个视图控制器中声明
var sentData: FirstViewController.typeOfMyStructure!
在任何视图控制器之外声明typeOfMyStructure
旁注:请以大写字母
命名结构和 类
我在 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'
预先感谢您的宝贵帮助!
两个选项:
如果
typeOfMyStructure
在第一个视图控制器中创建,在第二个视图控制器中声明var sentData: FirstViewController.typeOfMyStructure!
在任何视图控制器之外声明
typeOfMyStructure
旁注:请以大写字母
命名结构和 类