这是我的代码片段:
class ProductCategoryCell: UITableViewCell {
@IBOutlet weak var collectionViewProducts: UICollectionView!
// other stuff...
func setProducts() {
let productsObservable = Observable.just([
Product(name: "test", price: 10.0),
Product(name: "test", price: 10.0),
Product(name: "test", price: 10.0)
])
productsObservable.bindTo(collectionViewProducts.rx.items(cellIdentifier: "ProductCell", cellType: ProductCell.self)) {
(row, element, cell) in
cell.setProduct(element)
}.disposed(by: disposeBag)
}
}
它给了我一个构建错误:
没有“项目”候选产生预期的上下文结果类型 '(Observable<[Product]>) -> (_) -> _'
在我的视图控制器中,我使用类似的代码填充表视图:
let productsObservable = Observable.just(testProducts)
productsObservable.bindTo(tableViewProducts.rx.items(cellIdentifier: "ProductCategoryCell", cellType: ProductCategoryCell.self)) { (row, element, cell) in
cell.setCategory(category: element)
}.disposed(by: disposeBag)
此代码正常工作。我究竟做错了什么?