
오늘은 iOS Combine framework operator 연산자 중, 여러 Publisher이벤트를 시간순으로 합져서 받기 위해 사용할 수 있는 merge(with:)에 대해서 예제와 함께 다뤄보겠습니다. 😁 iOS Combine, Publisher들의 이벤트를 merge 할때 사용하는 merge(with:) 공식 문서의 예시 참고하여 알아보기 merge(with:) 연산자는 인자로 Publisher를 받습니다. 그렇게 A, B Publisher가 있다고 할때, A.merge(with: B) 와 같이 될 수 있는 것인데요. 이렇게 되면, 하나의 stream을 통해 A, B가 방출하는 이벤트를 시간순으로 함께 받을 수 있게 됩니다. 그 아래 merge(with) 과 관련된 공식 문서에 나온 예시를 보..

iOS 앱 개발 간 font 속성을 커스터마이징 하고 싶을때가 있는데요. 오늘은 Font Asset을 추가해서 Font를 설정하는 ViewModifier를 정의 후 SwiftUI Text View에 적용하는 방법을 알아보겠습니다. Xcode Project에 Font Asset 추가하기 otf 맥용 폰트 확장자 등의 형태를 가진 파일을 먼저 준비해줍니다. 그리고 Xcode의 앱 프로젝트 하위 경로에 Fonts 폴더를 만들어서 안에 드래깅 해서 폰트를 추가해줍니다. 각각의 폰트 Asset에 대한 App Target이 체크되어있는지도 확인해줍니다. 이어서 commend+shift+O 버튼을 누른 후, 본인이 개발하는 앱 타겟의 info.plist를 검색 후 해당 파일 화면으로 이동합니다. property li..

combine을 사용하다보면, type erasure 역할을 하는 eraseToAnyPublisher를 많이 사용하게 되는데요. 오늘은 Combine framework에서 제공하는 eraseToAnyPublisher 공식 문서를 살펴보는 시간을 가져보겠습니다. eraseToAnyPublisher Overview eraseToAnyPublisher는 instance method이며, iOS13+에서 지원합니다. type erasure와 함께 publisher를 wrapping합니다. Declaration을 보면, Output, Failure 타입을 가진 AnyPublisher를 반환하고 있습니다. eraseToAnyPublisher는 downstream subscriber에게 publisher의 상세 타입..

오늘은 iOS의 Combine framework를 활용해서 UIView, UIButton(UIControl을 상속받는 애들)의 탭 이벤트(+ throttle publisher event)를 Custom Publisher를 만들어서 구독하고, UI와 바인딩해서 사용해보는 시간을 갖도록 합니다. 프로젝트는 UILabel, UIButon을 중앙에 배치시켰습니다. 이제 위에 있는 UILabel, UIButton에 탭이벤트를 적용시켜볼 예정입니다. ViewController.swift 초기 모습 생성한 ViewController 파일 초기 모습입니다. 임의의 이름으로 UIButton, UILabel (centerButton, centerLabel)을 생성했습니다. 그리고 Publisher 구독정보를 관리한 can..
- Total
- Today
- Yesterday
- 컬렉션
- publisher
- 자연어처리
- ios
- 프로토콜
- swift 문자열
- 프로그래머스
- 백준swift
- swift문제
- SwiftUI
- swift
- createML
- Collection
- swift reduce
- Swift 알고리즘
- swift알고리즘
- 알고리즘
- CoreML
- swift string
- swift언어
- 김프매매
- 개발자문서
- 알고리즘문제
- 스위프트
- uikit
- 프로그래머스swift
- 부스트코스
- 백준알고리즘
- swift 기초
- Protocol
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |