티스토리

malrang 의 ios 공부
검색하기

블로그 홈

malrang 의 ios 공부

marlangmarlang.tistory.com/m

뇌가 말랑말랑

구독자
0
방명록 방문하기

주요 글 목록

  • RxCocoa text (키워드 입력할때마다 Request요청하기) 키보드의 검색 버튼을 입력했을때 뿐만아니라 키워드를 입력할때마다 Request를 요청할수 없을까?? (rx.text로 변경된 text감지하기) 4줄 요약 RxCocoa의 text (SearchBar.rx.text)를 이용해 text변경시 Request를 요청하도록 구현함. 의도한것과 다르게 처음 키워드를 입력할때와 키보드 제거시 Request요청 하는 문제가 발생함. text Definition을 확인해보니 SearchBar의 text가 nil일경우 "" 으로 옵셔널바인딩 하는것과 키보드제거(편집 종료) 되었을때도 text를 방출하는것을 확인함. distinctUntilChanged()오퍼레이터를 사용해 동일한 text를 방출하게될경우 무시하도록 하여 문제를 해결함. 처음 API Search기능 구현시 .. 공감수 0 댓글수 1 2022. 10. 23.
  • RxSwift#5 ErrorHandling RxSwift ErrorHandling ErrorHandling 앱에서 발생하는 가장 흔한 에러들은 다음과 같다. 인터넷 연결 없음: 아주 흔한 에러 중 하나다. 만약 앱이 인터넷 연결을 통해 데이터를 받아와야하는데 기기가 오프라인 상태가 된다면, 이를 감지하고 적절한 대응을 해줘야 한다. 잘못된 입력: 때에 따라서 정해진 폼에 따라서 입력값이 필요한 경우가 있다. 하지만 사용자는 언제든지 잘못된 값을 입력할 수 있다. 전화번호 입력란에 숫자대신 글자를 입력하는 사용자는 언제나 있을 수 있다. API 또는 HTTP 에러: API를 통한 에러는 아주 광범위하게 일어난다. 표준 HTTP 에러(400 또는 500 에러)를 통해 표시되거나 JSON 내 status 필드를 통해 표시될 수 있다. RxSwift에서.. 공감수 1 댓글수 0 2022. 9. 28.
  • RxSwift#4-3 Operators (Combining Operators) RxSwift Combining Operators Combining Operators 다양한 방법으로 sequence들을 모으고, 각각의 sequence내의 데이터들을 병합하는 방법을 배워보자. observable로 작업할 때 가장 중요하게 확인해야 할 것은 observer가 초기값을 받는지 여부다. .startWith() 요녀석은 초기값을 갖는 옵저버블 이라고 할수있겠다. 이벤트가 발생되어 next로 방출될때 초기값을 방출한후 전달된 이벤트들을 방출할수 있게된다. 네트워크 연셜 상태 같이 현재 상태가 필요한 상황에 요녀석을 사용해 현재 상태를 초기값으로 붙여줄수 있겠다.let numbers = Observable.of(2, 3, 4) let observable = numbers.startWith(1) .. 공감수 3 댓글수 0 2022. 9. 24.
  • RxSwift#2 Observable RxSwift2 Observable Observable Observable은 이벤트 시퀀스를 비동기적으로 생성하는 기능을 가지고 있다. observable, observable sequence, sequence 모두 같은 말이다. 중요한것은 이 모든 것들이 비동기적()이라는 것 이다. 이 때 Observable이 지속적으로 이벤트를 발생시키는 것을 emit(방출)이라고 한다. 1. Observable의 LifeCycle next를 통해 1, 2, 3을 방출하는 Observable 세번의 tap 이벤트를 방출한뒤 Complete를 통해 종료된 Observable 1, 2를 방출하고 에러가 발생해 error를 통해 종료된 Observable 이전글에 작성한것처럼 여기서 next, error, complete.. 공감수 0 댓글수 2 2022. 9. 23.
  • RxSwift#3 Hot Observable vs Cold Observable, Subjects + Relay RxSwift3 Subjects, Relay Hot Observable vs Cold Observable 언제 이벤트들이 방출 되는지에 따라 Observable을 두가지로 분류할 수 있다. 두가지의 차이점은 다음과 같다. 구독할 시 데이터를 처음부터 발행 여부 이벤트 발생 시점 스트림 분기 성질 Hot Observable Observable을 생성하고 일정 시간이 지난 상태에서 subscribe하면 처음 데이터를 받는 것이 아닌 중간부터 방출된 데이터를 받을 수 있게된다. 구독 여부와 상관없이 데이터를 방출합니다. 데이터를 처음부터 발행하는 것이 아닌 구독 시점에서 방출되는 값을 받기 시작합니다. 스트림을 분기하는 성질이 있다. 마우스, 키보드, 시스템 이벤트와 같은 UIEvent, 타이머, 멀티 캐스팅.. 공감수 0 댓글수 0 2022. 9. 22.
  • RxSwift#1 RxSwift의 개념과 용어들 RxSwift 시작하기 RxSwift란? RxSwift is a library for composing asynchronous and event-based code by using observable sequences and functional style operators, allowing for parameterized execution via schedulers. By Marin Todorov. ‘RxSwift — Reactive Programming with Swift.’ RxSwift는 코드를 새로운 데이터에 반응하며 순차적으로 처리하게 함으로써 비동기 프로그래밍을 쉽게하도록 도와준다. UIKit에서의 비동기 프로그래밍 대부분의 Class에서는 비동기로 작업을 수행하고 모든 UI 구성은 기본적으로.. 공감수 0 댓글수 0 2022. 9. 22.
  • RxSwift#4-2 Operators Transforming Operators RxSwift Transforming Operators Transforming Operators Observable을 변형하는 Operator .toArray() Observable의 독립적 요소들을 array로 넣는 가장 편리한 방법은 toArray를 사용하는 것이다. let disposeBag = DisposeBag() Observable.of("A", "B", "C") .toArray() .subscribe(onNext: { print($0) }) .disposed(by: disposeBag) 요녀석은 array로 바뀐다고했다. 출력은 요렇게! ["A", "B", "C"] .map() RxSwift의 map 연산자는 Observable 에서 동작한다는 점만 제외하면 Swift 표준 라이브러리의 ma.. 공감수 0 댓글수 0 2022. 7. 18.
  • RxSwift#4-1 Operators, (Filtering, Skipping, Taking, Distinct) RxSwift Operators Operator란? Operator는 Rx의 기본요소이다. Operator를 사용해 Observable에 의해 방출 되는 이벤트를 변환하고 처리하여 대응할수 있다. Operator는 크게 세 그룹으로 나뉘며 다음과 같다 Filtering Operator Transforming Operator Combining Operator Filtering Operators filtering operator를 사용해 .next이벤트를 통해 받아오는 값을 선택적으로 취하할 수 있다.(원하는놈만 걸러서 가져올수있다.) 기존 Swift의 filter(_:)와 비슷하다. 1. .ignoreElements() https://rxmarbles.com/#ignoreElements ignoreElem.. 공감수 0 댓글수 0 2022. 7. 1.
  • 곰튀김님의 RXSwift 1교시 곰튀김님의 RXSwift 1교시 RxSwift는 Swift에 ReactiveX를 적용시켜 비동기 프로그래밍을 직관적으로 작성할 수 있도록 도와주는 라이브러리입니다. RXSwift의 용도는 비동기로 처리되는 작업을 completionHandler(클로저)로 전달하는게 아니라 리턴값으로 전달하기위해 만들어진 유틸리티다! RXSwift를 사용하기 위해서는 아래의 방법들을 익혀야한다! 비동기로 생기는 데이터를 Observable로 감싸서 리턴하는 방법 Observable로 오는 데이터를 받아서 처리하는 방법 Observavle RxSwift에서 사용되는 Observavle 는 아래의 예시코드 형태로 구현되어있다. 위에서 설명한 비동기로 처리되는 작업을 클로저로 전달하지 않고 리턴값으로 전달하기 위해 사용된다! .. 공감수 0 댓글수 0 2022. 6. 26.
    문의안내
    • 티스토리
    • 로그인
    • 고객센터

    티스토리는 카카오에서 사랑을 담아 만듭니다.

    © Kakao Corp.