iOS开发--Swift RAC响应式编程

  时间不是很充足, 先少说点, RAC的好处是响应式编程, 不需要自己去设置代理委托, target, 而是主要以信息流(signal), block为主, 看到这里激动吧, 它可以帮你监听你的事件, 并通过回调(callback)的形式, 实时更新UI, 其实就是把action, 观察者模式(kvo)加上block, 代理等封装起来统一了接口.

  这篇文章就不太针对RAC事件流的初学者了, 我的博客一般都是针对OC转Swift的开发者, 所以这里就简单的写几句先, 以后我再补全加上demo.

  在OC中RAC使用时用的是个宏, 然后骂娘的大家都知道Swift取消了宏, 所以假如你习惯了RAC(Rx完全支持swift), 想要使用的话, 自己新建一个文件, 然后加入如下代码就可以了.

public struct RAC  {

    var target : NSObject!

    var keyPath : String!

    var nilValue : AnyObject!

    

    init(_ target: NSObject!, _ keyPath: String, nilValue: AnyObject? = nil) {

        self.target = target

        self.keyPath = keyPath

        self.nilValue = nilValue

    }

    

    func assignSignal(signal : RACSignal) {

        signal.setKeyPath(self.keyPath, onObject: self.target, nilValue: self.nilValue)

    }

}

posted @ 2015-11-01 15:43  谢民强  阅读(229)  评论(0编辑  收藏  举报