swift - Rx swift : Append elements to Observable<[_]>

标签 swift rx-swift

我有一个数组 ( Observable<[_]> ),它是 TableView 的数据源。我希望能够向其追加新元素并在每次向数组追加新元素时更新 tableview。我找不到如何将新元素添加到 Observable<[_]> .

最佳答案

使用主题,例如变量。然后只需将 value 属性视为您的 Array 并向其append 以添加新元素。通过 asObservable() 订阅 Variable

我已经使用 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")

一旦你有了你的数据源,你会想通过

将它连接到一个 tableView
dataSource.asObservable().bindTo(yourTableView.rx_itemsWithCellIdentifier("MyCellClass", cellType: MyCellClass.self)) { (row, element, cell) in
      // do your cell configuration here
}

关于swift - Rx swift : Append elements to Observable<[_]>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37102693/

相关文章:

xcode - Swift 和 Xcode 立即出现错误,无需进行任何更改

ios - 使用 RxSwift 观察 UITextField.editing

swift - RxSwift map 和 flatMap 的区别

ios - 'success' 中的成员 'SingleEvent<_>' 产生类型为 'SingleEvent<Element>' 的结果

swift - 转换到 Swift 3 的困难

json - 读取本地 JSON 文件并使用它来填充 UITableView

ios - 如何获取以编程方式创建的ViewController的安全区域框架?

swift - 为什么我的 UIPickerview 无法在 UIAlertcontroller 中工作?

ios - 在 RxSwift 中测试 BehaviorSubject/Relay

ios - 如何在 Objective-C 和 Swift 项目中使用 RxSwift?