gpt4 book ai didi

ios - 当字典值改变时做一些事情

转载 作者:搜寻专家 更新时间:2023-10-31 22:08:46 25 4
gpt4 key购买 nike

我正在寻找一种方法来在字典的值发生变化时运行一些代码。我对 Swift 还是很陌生,但这是我目前所拥有的:

var objects: NSMutableDictionary {
didChange(changeKind: keyValue, valuesAtIndexes: indexes, forKey: something){

}
}

然而,这给了我一个编译错误(使用未解析的标识符),无论我做什么,我似乎都无法让它工作。有什么想法吗?

最佳答案

你要找的是 didSet property observer .用法如下:

var objects: NSMutableDictionary? {
didSet {
// stuff
}
}

请注意,如果您希望在属性更改之前而不是之后收到通知,则 willSet 是另一种选择。在 willSet 的情况下,您得到一个 newValue 变量,表示属性的传入值,在 didSet 的情况下,一个 oldValue 表示传出值的属性。

正如下面提到的@Paulw11,当字典的内容发生变化时,这不会通知你。只有当变量被重新赋值时。如果您想在字典中的值更新时收到通知,(AFAIK) 您必须使用等效的 Swift 字典。

var swiftObjects: [NSObject: AnyObject]? {
didSet {
println(oldValue)
}
}

关于ios - 当字典值改变时做一些事情,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27628579/

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