전체 글 167

[iOS] vector 이미지를 쓰는 이유와 Bitmap 이미지의 1x 2x 3x가 뭔가요

개요 회사 입사 후.. ???: 제플린에서 애셋 다운은 이렇게 받으시면 됩니다~ 이미지 클릭 → pdf 클릭 & 저장 → Asset으로 옮기기 → Single Scale 설정 → Preserve Vector Data 체크 hyunndy: 넵 알겠습니다! 👩🏻‍🎨 . . . 지금까지 이렇게 아무 생각없이 asset을 넣고있다가 토이프로젝트 작업할 때 게임 UI 디자이너 친구에게 리소스를 부탁할 때 이런 대화가 있었습니다. hyunndy: Y야 이거 리소스 pdf형식으로 뽑아주라~ Y: 그래~ 근데 pdf?! 오 왜 pdf형식으로 써? 신기하다. hyunndy: ...(충격) 그렇습니다. 제가 또 얼레벌레 이유를 명확하게 설명하지 못하고 관습적으로 작업하고 있었던것입니다...(이마탁) 공부해보겠습니다. iO..

iOS/개념 2022.01.27

[iOS] TableView와 CollectionView의 reusable Cell

노션링크: https://acoustic-string-66e.notion.site/tableview-collctionview-cell-34dc8e520c594a7b9bc3860a873b1ea5 개요 UITableView, UICollectionView의 기본 사용방법은 다음과 같습니다. cell class를 tableView init단계에서 register 해준다. delegate에서 등록한 cell 클래스를 reusable로 만들어서 사용한다. cell 재사용에 관한 개념을 너무 대충 알고 사용하고있다는 생각이 들어 이 기회에 공부해보겠습니다. https://developer.apple.com/documentation/uikit/uitableview/1614878-dequeuereusablecell 해..

iOS/개념 2021.12.29

[iOS] RxSwift로 UITextField 리팩토링 하기

RxSwift로 공통으로 쓰이는 UITextField 컴포넌트를 리팩토링한 과정이 회사 블로그에 기재되었습니다. RxSwift로 UITextField 만져보고싶다. 하는 분들은 회사 블로그글에 많관부! (--) (__) (--) https://dealicious-inc.github.io/2021/12/06/rxswift-textfield.html RxSwift를 이용한 공통 UITextField 리팩토링 파편화된 로직을 RxSwift로 통합해보자 dealicious-inc.github.io

[iOS] UIStackView를 이용해 금액 입력 애니메이션 만들기

회사 업무 중 자사 결제 서비스에 금액 입력 애니메이션을 구현해달라는 요청이 있어 개발했습니다. UIStackView를 이용해 만든 View고, AmazingPriceView라는 이름으로 CocoaPods 라이브러리로 등록되어있습니다. 회사 기술 블로그에 자세한 내용이 기재되어 있으니 관심 있으신 분은 회사 블로그에서 정독 부탁드립니다. (--) (__) (--) https://dealicious-inc.github.io/2021/02/19/swift-animation-view.html Swift 금액 입력 애니메이션 뷰 개발 일지 UIStackView의 능력을 최대한 이끌어내 보자 dealicious-inc.github.io 깃허브 링크 https://github.com/yoosa3004/Amazing..

[iOS] iOS에서의 Thread, GCD, NSOperation

등장하는 개념들 정리한 포스트 참고해주세요~ https://hyunndyblog.tistory.com/177 iOS의 Thread Thread는 두 가지 종류가 있다. Main Thread Global Thread (= Background Thread) Main Thread iOS에서 Main Thread는 오직 한 개만 존재한다. → 나머지는 모두 Background Thread 개발자가 일반적으로 작성한 코드는 Main Thread에서 동작한다. 이유는 작성된 코드가 Cocoa에서 실행되는데, 이 Cocoa가 코드를 Main Thread에서 호출하기 때문이다. (※ Cocoa: OS X, iOS 애플리케이션을 개발할 때 사용하는 프레임워크를 모두 포함하는 개념) Main Thread는 interfac..

iOS/개념 2021.12.08

[iOS] Process, Thread, Task, sync, async, serial, concurrent 용어 정리

안녕하세요. GCD에 대해 정확히 알고있지 않은 것 같아서 공부를 하려고보니 얼레벌레 알고있던 용어들이 몇 개 있더군요. 멀티쓰레딩과 같이 많이 언급되는 개념들을 이곳저곳에서 모아 정리해보았습니다. 프로세스 개요 컴퓨터가 발전하면서 여러 프로그램이 메인 메모리에 적재되어 병행 실행되었다. 이런 변화는 컴퓨터의 효율을 높여주어지만, 프로그램에 대한 강력한 통제도 요구하기 시작했다. 이 때 프로세스라는 개념이 등장했다. 개념 프로세스란 간단히 실행중인 프로그램 이다. 이는 디스크에 저장되어 있던 응용 프로그램이 메모리에 적재되어 운영체제의 제어를 받는 상태를 말한다. 다시 말해, 해당 프로세스가 사용하고 있는 메모리 영역(자신의 주소공간)이 존재함을 의미한다. 프로세스는 메모리에 다음과 같은 주소 공간을 갖..

iOS/개념 2021.12.08

[RxSwift] UITextFiled의 rx.controlEvent(event: .editingDidEndOnExit) 가 불리지 않을 때

textField의 textFieldShouldReturn(_ :) 메서드를 확인하자. UITextField의 .editingDidEndOnExit controlEvent를 구독하여 키보드에서 return키가 눌릴 때 원하는 처리를 할 수 있다. 하지만 최근 기존 textField를 리팩토링하면서 self.rx.controlEvent(event: .editingDidEndOnExit).subscribe(onNext: { [weak self] in guard let s = self else { return } // do something }).disposed(by: self.disposeBag) 이런 코드를 넣어 .editingDidEndOnExit 를 구독하려고 했더니 저 event가 불리지 않았다. 이..

iOS/RxSwift 2021.12.07