我有一个数组(Observable<[_]>
),它是tableview的数据源。我希望能够向它添加新元素,并在每次将新元素附加到数组时更新tableview。我找不到如何向Observable<[_]>
添加新元素。
答案 0 :(得分:15)
使用Subject
,例如Variable
。然后,只需将value
属性视为Array
和append
即可添加新元素。通过Variable
订阅asObservable()
。
我使用String
简化了代码示例,但是您需要使用某种UITableViewCell
。
let dataSource = Variable<[String]>([])
dataSource.value.append("some string A")
dataSource.asObservable()
.subscribeNext { e in
print(e)
}
.addDisposableTo(disposeBag)
dataSource.value.append("some string B")
获得dataSource后,您需要通过
将其连接到tableViewdataSource.asObservable().bindTo(yourTableView.rx_itemsWithCellIdentifier("MyCellClass", cellType: MyCellClass.self)) { (row, element, cell) in
// do your cell configuration here
}