数据绑定(订阅)

数据绑定(订阅) - 图1

RxSwift 里有一个比较重要的概念就是数据绑定(订阅)。就是指将可监听序列绑定到观察者上:

我们对比一下这两段代码:

  1. let image: UIImage = UIImage(named: ...)
  2. imageView.image = image
  1. let image: Observable<UIImage> = ...
  2. image.bind(to: imageView.rx.image)

第一段代码我们非常熟悉,它就是将一个单独的图片设置到imageView上。

第二段代码则是将一个图片序列 “同步”imageView上。这个序列里面的图片可以是异步产生的。这里定义的 image 就是上图中蓝色部分(可监听序列),imageView.rx.image就是上图中橙色部分(观察者)。而这种 “同步机制” 就是数据绑定(订阅)