在多个控制器之间传递/更新变量的值
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在多个控制器之间传递/更新变量的值相关的知识,希望对你有一定的参考价值。
我正在努力工作。所以在我的项目中,我使用了7个控制器和一个变量,我在所有7个控制器中使用了它。我的问题是,我将如何更改我的变量(比如第一个控制器)的值,以便它自动在所有控制器上更新。
执行此操作的正确方法是什么?我将如何进行?
答案
使用singleton共享实例创建全局变量。 Herer is the link, its a step by step tutorial
另一答案
使用Singleton类
class GlobalObjects {
static let shared = GlobalObjects()
fileprivate init() {
}
var MyDetail : User!
}
使用:
print(GlobalObjects.shared.MyDetail)
- 使用单例类变量更新viewWillAppear方法中的值。
要么
- 使用NotificationCenter,在所有7个控制器上添加观察器并发布通知以更新值
另一答案
您可以使用变量的didSet可能性。像这样的东西
var yourVariable: Any? = nil {
didSet {
yourActionToUpdateUI()
}
}
以上是关于在多个控制器之间传递/更新变量的值的主要内容,如果未能解决你的问题,请参考以下文章