如何仅更新已更改的RxDataSource中的单元格而不是所有单元格?

时间:2018-02-08 18:56:06

标签: ios swift rx-swift

我正在使用RxSwiftRxDataSources创建表格视图。

但是,当只更改一个单元格时,我不想重新加载所有单元格。

如何使用RxSwift实现此目的?

目前的解决方案。

private let dataSource = RxTableViewSectionedReloadDataSource<VehicleCheckDeteilsSectionModel>()

小区配置。

dataSource.configureCell = {[weak self] (_, tableView: UITableView, indexPath: IndexPath, item: VehicleCheckDeteilsCellModel) in
    return self?.deteilsCellFactory(in: tableView, for: indexPath, with: item) ?? UITableViewCell()
}

外包数据。

let sectionModelObserver = viewModel?.tableSectionModel.asObservable().observeOn(MainScheduler.instance).share()
sectionModelObserver?.bind(to: self.deteilsTableView.rx.items(dataSource: dataSource)).disposed(by: disposeBag)

1 个答案:

答案 0 :(得分:1)

AnimatableSectionModelType上实施VehicleCheckDeteilsSectionModel并制作您的dataSource RxTableViewSectionedAnimatedDataSource