RxSwift에서 Reactive

5828 단어 RxSwift

Reactive란?



변화를 계속 모니터링 할 수있는 느낌?

지금까지, delegate나, 무엇인가로 하고 있던 처리를 Reactive에서는 다른 느낌으로 잘 해 줍니다.

공식적으로

Rx is a generic abstraction of computation expressed through Observable interface.

you tube interview

나이스 미들이 만들었습니다.

예를 들어,

UISegmentedControl에서 UITableView의 값을 전환하는 경우의 처리는 다음과 같습니다.


//
//  ViewController.swift
//  RxDemo
//
//  Created by Shichimitoucarashi on 2018/06/02.
//  Copyright © 2018年 keisuke yamagishi. All rights reserved.
//

import UIKit
import RxSwift
import RxCocoa

class ViewController: UIViewController {

    @IBOutlet weak var tableView: UITableView!    
    @IBOutlet weak var segment: UISegmentedControl!

    var items = Variable(["DEDE","LOL","LPL","DIE"])

    var disposeBag = DisposeBag()

    override func viewDidLoad() {

        super.viewDidLoad()

        let result = self.segment.rx.selectedSegmentIndex.bind { (val) in
            if Int(val) == 0 {
                self.items.value = ["DEDE","LOL","LPL","DIE"]
            }else{
                self.items.value = ["SWS","SIS","SPS","LPOP","QAQ"]
            }
        }

        self.items
            .asObservable()
            .bind(to: tableView.rx.items(cellIdentifier: "Cell")) {row,element,cell in

                cell.textLabel?.text = element

        }.addDisposableTo(self.disposableBag)


    }
}

이런 느낌이 듭니다.

tableView에 표시하고 있는, items 변수의 값을 갱신하는 것만으로, 전환합니다.

Reactive!

Reactive!



Reactive!



Reactive!



이런 느낌입니다.

좋은 웹페이지 즐겨찾기