不同的单元格CollectionView rxswift

时间:2019-11-19 18:51:24

标签: uicollectionviewcell rx-cocoa

晚上好。 请告诉我 我需要进行这样的实施 有:CollectionView Rxswift 单元格的最大数量为6 如果某个数组中的元素少于6个,则第一个单元格用一种类型(按数组中元素的数量)填充,其余单元格用其他单元格填充。

collectionView.register(UINib(nibName: "PhotoCollectionCell", bundle: nil), forCellWithReuseIdentifier: "PhotoCell")
collectionView.register(UINib(nibName: "EmptyCollectionCell", bundle: nil), forCellWithReuseIdentifier: "EmptyCell")

2 个答案:

答案 0 :(得分:0)

请从RxCocoa的collectionView.rx.items中检查UICollectionView+Rx.swift 这是代码本身的示例

   let items = Observable.just([
             1,
             2,
             3
         ])

         items
         .bind(to: collectionView.rx.items) { (collectionView, row, element) in
            let indexPath = IndexPath(row: row, section: 0)
            let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "Cell", for: indexPath) as! NumberCell
             cell.value?.text = "\(element) @ \(row)"
             return cell
         }
         .disposed(by: disposeBag)

您可以根据行的索引或数据类型使想要的任何单元格出队,就像我们在DataSource中所做的一样

答案 1 :(得分:0)

如果要使用其他单元格类型,则需要导入RxDataSources。

The user 'DeepAb' isn't allowed to upload to project 'deco'.