Upgrade to Pro — share decks privately, control downloads, hide ads and more …

SwiftBondReactiveKit.pdf

 SwiftBondReactiveKit.pdf

Presentation given at Realm about why I enjoy using ReactiveKit formerly known as SwiftBond.

thedevme

July 21, 2016
Tweet

More Decks by thedevme

Other Decks in Technology

Transcript

  1. btnReset.rTap.observeNext { [weak self] _ in guard let weakSelf =

    self else { return } weakSelf.homeScoreValue = 0 weakSelf.awayScoreValue = 0 weakSelf.awayScore.value = "0" weakSelf.homeScore.value = "0" }.disposeIn(rBag) UIButton
  2. btnReset.rTap.observeNext { [weak self] _ in guard let weakSelf =

    self else { return } weakSelf.homeScoreValue = 0 weakSelf.awayScoreValue = 0 weakSelf.awayScore.value = "0" weakSelf.homeScore.value = "0" }.disposeIn(rBag) UIButton
  3. btnReset.rTap.observeNext { [weak self] _ in guard let weakSelf =

    self else { return } weakSelf.homeScoreValue = 0 weakSelf.awayScoreValue = 0 weakSelf.awayScore.value = "0" weakSelf.homeScore.value = "0" }.disposeIn(rBag) UIButton
  4. barBtnCamera.rTap.observeNext { [weak self] _ in guard let weakSelf =

    self else { return } weakSelf.lblDisplay.rText.value = "Camera Tapped” }.disposeIn(rBag) UIBarButtonItem
  5. barBtnCamera.rTap.observeNext { [weak self] _ in guard let weakSelf =

    self else { return } weakSelf.lblDisplay.rText.value = "Camera Tapped” }.disposeIn(rBag) UIBarButtonItem
  6. barBtnCamera.rTap.observeNext { [weak self] _ in guard let weakSelf =

    self else { return } weakSelf.lblDisplay.rText.value = "Camera Tapped” }.disposeIn(rBag) UIBarButtonItem
  7. segmentControl.rSelectedSegmentIndex.skip(1).observeNext { … in guard let weakSelf = self else

    { return } if value == 0 { weakSelf.lblDisplay.rText.value = "Players Segment selected" } else { weakSelf.lblDisplay.rText.value = "Coaches Segment selected" } }.disposeIn(rBag) UISegmentedControl
  8. segmentControl.rSelectedSegmentIndex.skip(1).observeNext { … in guard let weakSelf = self else

    { return } if value == 0 { weakSelf.lblDisplay.rText.value = "Players Segment selected" } else { weakSelf.lblDisplay.rText.value = "Coaches Segment selected" } }.disposeIn(rBag) UISegmentedControl
  9. segmentControl.rSelectedSegmentIndex.skip(1).observeNext { … in guard let weakSelf = self else

    { return } if value == 0 { weakSelf.lblDisplay.rText.value = "Players Segment selected" } else { weakSelf.lblDisplay.rText.value = "Coaches Segment selected" } }.disposeIn(rBag) UISegmentedControl
  10. switchReactive.rOn.skip(1).observeNext { [weak self] value in guard let weakSelf =

    self else { return } weakSelf.lblDisplay.rText.value = “\(value)" }.disposeIn(rBag) UISwitch
  11. switchReactive.rOn.skip(1).observeNext { [weak self] value in guard let weakSelf =

    self else { return } weakSelf.lblDisplay.rText.value = “\(value)" }.disposeIn(rBag) UISwitch
  12. switchReactive.rOn.skip(1).observeNext { [weak self] value in guard let weakSelf =

    self else { return } weakSelf.lblDisplay.rText.value = “\(value)" }.disposeIn(rBag) UISwitch
  13. tableView.rDataSource.forwardTo = self data.bindTo(tableView) { [weak self] indexPath, dataSource, collectionView

    in guard let weakSelf = self else { return UITableViewCell() } let cell = weakSelf.tableView.dequeueReusableCellWithIdentifier (weakSelf.textCellIdentifier, forIndexPath: indexPath) let row = indexPath.row cell.textLabel?.text = weakSelf.data[row] return cell } UITableView
  14. tableView.rDataSource.forwardTo = self data.bindTo(tableView) { [weak self] indexPath, dataSource, collectionView

    in guard let weakSelf = self else { return UITableViewCell() } let cell = weakSelf.tableView.dequeueReusableCellWithIdentifier (weakSelf.textCellIdentifier, forIndexPath: indexPath) let row = indexPath.row cell.textLabel?.text = weakSelf.data[row] return cell } UITableView
  15. tableView.rDataSource.forwardTo = self data.bindTo(tableView) { [weak self] indexPath, dataSource, collectionView

    in guard let weakSelf = self else { return UITableViewCell() } let cell = weakSelf.tableView.dequeueReusableCellWithIdentifier (weakSelf.textCellIdentifier, forIndexPath: indexPath) let row = indexPath.row cell.textLabel?.text = weakSelf.data[row] return cell } UITableView
  16. tableView.rDataSource.forwardTo = self data.bindTo(tableView) { [weak self] indexPath, dataSource, collectionView

    in guard let weakSelf = self else { return UITableViewCell() } let cell = weakSelf.tableView.dequeueReusableCellWithIdentifier (weakSelf.textCellIdentifier, forIndexPath: indexPath) let row = indexPath.row cell.textLabel?.text = weakSelf.data[row] return cell } UITableView