ios – 在元素添加删除到阵列时收到通知

ios – 在元素添加删除到阵列时收到通知,第1张

概述我希望在从数组中添加/删除元素时收到通知.如果我们不是在讨论数组,例如在更改字符串时收到通知,那么在 swift中有一个很好的解决方案: private var privateWord: String?var word: String? { get { return privateWord } set { if newValue != "" 我希望在从数组中添加/删除元素时收到通知.如果我们不是在讨论数组,例如在更改字符串时收到通知,那么在 swift中有一个很好的解决方案:
private var privateWord: String?var word: String? {    get {        return privateWord    }    set {        if newValue != "" {            notifyThatWordisChanged()        } else {            notifyThatWordisEmpty()        }        privateWord = newValue    }}

当我向数组添加/删除元素时,我们能否得到类似的结果?

解决方法 您可以创建类似于class / struct的代理,它将具有与array相同的接口,将在场景下存储标准数组并代表store数组.这是一个小例子:
struct ArrayProxy<T> {    var array: [T] = []    mutating func append(newElement: T) {        self.array.append(newElement)        print("Element added")    }    mutating func removeAtIndex(index: Int) {        print("Removed object \(self.array[index]) at index \(index)")        self.array.removeAtIndex(index)    }    subscript(index: Int) -> T {        set {            print("Set object from \(self.array[index]) to \(newValue) at index \(index)")            self.array[index] = newValue        }        get {            return self.array[index]        }    }}var a = ArrayProxy<Int>()a.append(1)
总结

以上是内存溢出为你收集整理的ios – 在元素添加/删除到阵列时收到通知全部内容,希望文章能够帮你解决ios – 在元素添加/删除到阵列时收到通知所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1104435.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-28
下一篇 2022-05-28

发表评论

登录后才能评论

评论列表(0条)

保存