美文网首页
在Cell中model赋值时进行rx绑定

在Cell中model赋值时进行rx绑定

作者: zaq1125 | 来源:发表于2020-07-27 16:07 被阅读0次

    最近学习Rxswift,在cell中,有时候在model赋值时才能进行绑定。因为复用和刷新,则会产生重复绑定,于是需要对disposeBag进行手动管理。在cell即将释放的时候,或者再次赋值前,将其释放。


    4531C9A5795D95BB99390429F1A3E71A.jpg

    单个Dispose,

    private var powerDispose: Disposable?
    
    var model: Your_Model! {
            didSet {
                setBinds(room: roomModel)
            }
        }
        
     private func setBinds(room: SingleRoomViewModel) {
            powerDispose?.dispose()
            powerDispose = model.power.map ({ (value) -> Float in
                let shadowOpacity = value ? 1 : 0
                return Float(shadowOpacity)
            }).bind(to: tempView.rx.shadowOpacity)
        }
    

    相关文章

      网友评论

          本文标题:在Cell中model赋值时进行rx绑定

          本文链接:https://www.haomeiwen.com/subject/ypwzlktx.html