Bar*_*ndo 1 uitableview ios swift rxdatasources
我正在尝试绑定(到 :) 一个 collectionView,但 tableView 也不起作用。我有一个 viewModel,我的 Variable<[]> 在哪里,我想在值更改时使用我的 tableView 进行订阅。
viewModel.theVariable
.asObservable()
.bind(to: tableView.rx.items(cellIdentifier: "Cell", cellType: UITableViewCell.self)){
(row, item, cell) in
cell.textLabel?.text = item
}
.addDisposableTo(disposeBag)
Run Code Online (Sandbox Code Playgroud)
XCode 告诉我Type 'inout UITableView' does not conform to protocol 'ReactiveCompatible'应该是哪个,因为它适用于任何 UIView。
我已经尝试过使用它的 just() Observable 并且这种方法似乎可以正常工作。问题是我需要有一个变量,我在 viewModel 中设置了一个值,在 View 中我需要观察这个变化。不确定 Observable 是否提供此方法。
关键是这应该适用于变量吗?这是一个错误吗?我使用 Swift 3.2
这是一个工作代码示例:
var dataSource : PublishSubject<[String]> = PublishSubject()
dataSource.asObservable().bind(to: self.mProductsCollectionView.rx.items) { (collectionView, row, element ) in
let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "reuseIdentifier", for: IndexPath(row : row, section : 0))
//customize cell
return cell
}.addDisposableTo(bag)
publish.onNext(["blah", "blah", "blah"])
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3138 次 |
| 最近记录: |