在Bond5 tableview / collectionview绑定中传递代理数据源

时间:2016-10-13 15:56:24

标签: ios swift3 reactivekit

使用Bond 4.x,可以在将tableview绑定到ObservableArray时传递我的自定义数据源,以便实现UICollectionViewDataSource方法的自定义调用(例如viewForSupplementaryElementOfKind),如下所示: / p>

viewModel.dataSource.bindTo(collectionView, proxyDataSource: HeaderViewCreator()) { indexPath, dataSource, tableView

现在已经在Bond5中消失,因为尝试使用proxyDataSource参数会导致编译器错误,期望调用中的参数标签不同。

不幸的是,我在迁移指南中找不到合适的部分,而且我也很难理解这方面的文档。 BNDTableViewProxyDataSource和朋友似乎完全离开了代码库。

感谢您提供任何帮助!

1 个答案:

答案 0 :(得分:1)

UITableView和UICollectionView现在具有bnd_delegate类型的属性bnd_dataSourceProtocolProxy。该类型具有属性forwardTo,您可以将其设置为接收ProtocolProxy未使用的委托或数据源回调(即Bond)。

例如:

class MyViewController: UITableViewDelegate {

  var tableView: UITableView

  func viewDidLoad() {
    super.viewDidLoad()
    tableView.bnd_delegate.forwardTo = self
  }
}