일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 리팩토링
- MVVM
- SWIFT
- Protocol
- Refactoring
- collectionview
- UITextView
- HIG
- uiscrollview
- uitableview
- combine
- 애니메이션
- rxswift
- ios
- map
- UICollectionView
- clean architecture
- 클린 코드
- swiftUI
- 리펙터링
- 리펙토링
- Clean Code
- 스위프트
- Observable
- tableView
- Human interface guide
- Xcode
- RxCocoa
- ribs
- swift documentation
- Today
- Total
목록withLatestFrom (3)
김종권의 iOS 앱 개발 알아가기
예제 코드에서 사용한 프레임워크 코드로 UI 작성에서 편리를 위해 사용 pod 'SnapKit' pod 'Then' Rx 프레임워크 pod 'RxSwift' pod 'RxCocoa' WithLatestFrom vs CombineLatest 공통점 결합하는 요소들의 타입들이 달라도 사용 가능 차이점 a.withLatestFrom(b): a이벤트가 발생했을 때만 b 이벤트와 같이 방출 combineLatest(a, b): a나 b이벤트 둘 중 하나 발생했을 때 방출 주의사항: combineLatest(a, b)는 바로 방출 사용처 withLatestFrom: 버튼을 탭한 경우, 입력했던 이메일 값을 서버에 전송하여 유효성 검정 실시 combineLatest: 이메일과 패스워드 입력할 때마다 카운트하여, 로그..
amb() ambiguous (모호한) switch 문과 역할 동일 런타임 시점에 스트림을 변경하여 emit할 수 있게하는 연산자 let newObservable = left.amb(right) => left 스트림과 right 스트림 중 먼저 방출되는 스트림만 살아남고 나머지 하나는 무시 ex1) let subjectEven = PublishSubject() let subjectOdd = PublishSubject() let newObservable = subjectEven.amb(subjectOdd) let disposable = newObservable.subscribe(onNext: { value in print(value) }) subjectOdd.onNext(1) subjectOdd.onNex..
merge 단순히 모든 event를 결합 (단 순서는 번갈아 가며) let disposeBag = DisposeBag() let first = Observable.of(1, 2, 3) let second = Observable.of(4, 5, 6) Observable.merge(first, second) .subscribe(onNext: { print($0) }) .disposed(by: dispseBag) /* Prints: 1 4 2 5 3 6 */ combineLatest 여러 소스 중에서 단 한 가지라도 이벤트를 방출하면, 각각 소스의 맨 마지막 값을 뽑아서 새로운 값을 방출 한 번 값을 방출한 이후에는 클로저가 각각의 Observable이 방출했었던 최신 값을 받음 - ex) 이메일과 비밀번호가..