2

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

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

这现在在 Bond5 中消失了,因为尝试使用proxyDataSource参数会导致编译器错误,需要在调用中使用不同的参数标签。

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

感谢您提供任何帮助!

4

1 回答 1

1

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

例如:

class MyViewController: UITableViewDelegate {

  var tableView: UITableView

  func viewDidLoad() {
    super.viewDidLoad()
    tableView.bnd_delegate.forwardTo = self
  }
}
于 2016-10-13T17:10:34.173 回答