RxSwift/RxExample/RxExample/Examples/SimpleTableViewExample/SimpleTableViewExampleViewC...

51 lines
1.3 KiB
Swift

//
// SimpleTableViewExampleViewController.swift
// RxExample
//
// Created by Krunoslav Zaher on 12/6/15.
// Copyright © 2015 Krunoslav Zaher. All rights reserved.
//
import Foundation
import UIKit
#if !RX_NO_MODULE
import RxSwift
import RxCocoa
#endif
class SimpleTableViewExampleViewController : ViewController {
@IBOutlet weak var tableView: UITableView!
override func viewDidLoad() {
super.viewDidLoad()
let items = Observable.just([
"First Item",
"Second Item",
"Third Item"
])
items
.bindTo(tableView.rx.items(cellIdentifier: "Cell", cellType: UITableViewCell.self)) { (row, element, cell) in
cell.textLabel?.text = "\(element) @ row \(row)"
}
.addDisposableTo(disposeBag)
tableView.rx
.modelSelected(String.self)
.subscribe(onNext: { value in
DefaultWireframe.presentAlert("Tapped `\(value)`")
})
.addDisposableTo(disposeBag)
tableView.rx
.itemAccessoryButtonTapped
.subscribe(onNext: { indexPath in
DefaultWireframe.presentAlert("Tapped Detail @ \(indexPath.section),\(indexPath.row)")
})
.addDisposableTo(disposeBag)
}
}