Swift 5.1 我可以在另一个视图控制器中访问结构实例声明吗?



我有一个结构:

struct User {
var name: String = ""
}

然后我在视图控制器 1 中创建了一个结构体实例

var user = User()

在视图控制器 1 中为其分配了一个值

user.name = "John"

如何使用结构实例在另一个视图控制器中复制值"John"? 我的主要目标是在 MVC 设计模式中使用结构。

这可以通过多种方式完成。首先,我想说的是,如果您要将其传递给细节视图控制器,请使用prepreForSegue方法。

override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if segue.identifier == "someSegue" {
let vc = segue.destination as! YourDetailVC
vc.user = self.user
}
}

对于传递数据的其他方式,您应该研究回调、委派和通知中心。

此外,结构会自动附带成员初始值设定项。因此,您可以按如下方式对其进行初始化:

let user = User(name: "John")

相关内容

  • 没有找到相关文章

最新更新