본문 바로가기
Swift/UIKit

[UIKit] RxSwift로 tableview만들기

by 마라민초닭발로제 2023. 3. 22.

Make tableview with RxSwift


import UIKit
import RxCocoa
import RxSwift

class ViewController: UIViewController {
    let tableView = UITableView()
    let disposeBag = DisposeBag()
    
    let items = Observable.just([
        "first Item",
        "second",
        "third"
    ])
    
    override func viewDidLoad() {
        super.viewDidLoad()
        
        tableView.frame = self.view.frame
        
        tableView.dataSource = nil
        tableView.delegate = nil
        
        tableView.register(UITableViewCell.self, forCellReuseIdentifier: "cell")

        view.addSubview(tableView)
        
        items.bind(to: tableView.rx.items(cellIdentifier: "cell", cellType: UITableViewCell.self)) { row, element, cell in
            cell.textLabel?.text = element
            
        }
        .disposed(by: disposeBag)
        
        
        tableView.rx.modelSelected(String.self)
            .subscribe(onNext: { value in
                print("선택되었음 \(value)")
                
            })
            .disposed(by: disposeBag)
    }
}

그러하다.