【问题标题】:RxSwift - Class property's bindingRxSwift - 类属性的绑定
【发布时间】:2017-04-10 05:46:00
【问题描述】:

我有一个关于绑定的问题: 我有一个自定义类的对象数组:Array.每个对象都可以在 bg 中更新(更改他的属性值)。 我还分离了控制器,它从列表中获取并存储一个对象作为变量并可以更新它(对象仍然相同,所以在列表中它也会被更新)

有没有什么办法可以绑定所有object.property -> UILabels on Controller,当属性改变时自动调用标签更新?

【问题讨论】:

    标签: ios swift data-binding rx-swift


    【解决方案1】:

    当然,有多种方法可以做到这一点,但根据你的描述,我会使用某种主题(因为你说背景会有变化,所以你可能需要 hot observable )....例如变量或发布主题。这样你就可以装箱了

    let myArrayStream: Variable<[MyObject]> = Variable([])
    

    您可以将此变量作为依赖项传递到您想要的任何地方,一方面您可以订阅它,另一方面您可以更新它的值。

    【讨论】:

    • 如果我需要从数组中订阅一个对象,我应该使用Variable&lt;MyObject&gt;?从数组中传递一个元素时,如下所示:vcProperty: Variable&lt;MyObject&gt; = array.value[index]?因此,如果我更改 vcProperty.prop,两个订阅者(针对 vcProperty 和数组)都会收到有关此事件的通知,对吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-20
    • 2017-02-21
    • 2021-08-22
    • 2011-12-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多