gpt4 book ai didi

swift - 如何更新 Swift 中的作业?

转载 作者:行者123 更新时间:2023-11-30 12:30:28 25 4
gpt4 key购买 nike

我想知道如何执行以下操作:

var x = Observed<String>("hello")
label.text = x

其他地方x已更新:

x.value = "World"

然后label.text会自动更新。这是到目前为止我所观察到的观察

class Observed<T> {
typealias Observer = (T)->()

var observer: Observer?

var value: T {
didSet {
if let observer = observer {
observer(value)
}
}
}

init(_ v: T) {
value = v
}
}

我相信这就是 RxSwift 等所做的事情,但这对于我正在做的事情来说有点矫枉过正

最佳答案

在这种情况下,您可能应该只使用 didSet

class YourClass {
var x: String = "" { didSet { someVC.someLabel.text = x } }
}

到目前为止,iOS 中还没有“ native ”数据绑定(bind)。

编辑:当然有 KVO,感谢 @matt 的提醒:)

关于swift - 如何更新 Swift 中的作业?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43621579/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com