RXSwift 初使用--UITableView

class ViewController: UIViewController {
    var  data : Observable<[String]>? = nil
    @IBOutlet weak var tableView: UITableView!
//    let musicListViewModel = MusicListViewModel()
    //负责对象销毁
    let disposeBag = DisposeBag()
    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.
        //将数据源变成可观察序列对象
        //可观察序列对象:序列 可以对这些数值进行 订阅 类似于通知
          data = Observable.just((0...30).map {"\($0)" })

        self.tableView.register(UITableViewCell.self, forCellReuseIdentifier: "musicCell")
         //将数据源数据绑定到tableView上
        data!.bind(to: tableView.rx.items(cellIdentifier:"musicCell")) { row, element, cell in
                cell.textLabel?.text = element
            }.disposed(by: disposeBag)
        
        //tableView点击响应
        tableView.rx.modelSelected(String.self).subscribe(onNext: { element in
            print("你选中的歌曲信息【\(element)】")
        }).disposed(by: disposeBag)
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }
}

赏个喜欢再走啊~~~

你可能感兴趣的:(RXSwift 初使用--UITableView)