【发布时间】:2020-11-21 23:43:11
【问题描述】:
在 swift 中,如何在应用程序委托中创建一个变量以便在应用程序的任何地方检索它? 我不是在说 NSManagedObject
我知道它的开头是:
let appDelegate = UIApplication.shared.delegate as! AppDelegate
我有一个类 Personne
class Personne {
var One: String
var Two: Float
}
和另一个类来创建一个单例:
class PersonneController {
var shared = Personne()
在我的应用程序中,我创建了一个这样的实例:
var personne = Personne()
所以每个变量都在检索
personne.shared.myvariable
如何将 personne 放入应用委托中,以便从任何地方检索它?
【问题讨论】:
-
“为了在应用程序的任何地方检索它”虽然很诱人,但您绝对不希望这样。可以从任何地方访问的可变内容可以从任何地方更改,这意味着您无法轻松读取任何访问该值的代码。您的本地推理使您认为某些代码应该以一种方式运行,但它可以做完全其他的事情,因为其他模块可以在您的脚下访问和更改该全局值。它很容易成为一场噩梦
-
@Alexander-ReinstateMonica 总的来说你是对的,只是我采用的解决方案不同。这是很好地解释它的链接。 link
标签: swift appdelegate