일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- UITextView
- uiscrollview
- 클린 코드
- map
- MVVM
- Protocol
- rxswift
- Clean Code
- UICollectionView
- swiftUI
- Human interface guide
- ribs
- 리펙터링
- clean architecture
- 스위프트
- RxCocoa
- HIG
- SWIFT
- collectionview
- combine
- Refactoring
- uitableview
- ios
- 애니메이션
- 리팩토링
- Xcode
- 리펙토링
- tableView
- swift documentation
- Observable
- Today
- Total
목록iOS framework (33)
김종권의 iOS 앱 개발 알아가기
1. ReactorKit 샘플 앱 - RxDataSources 사용 방법 2. ReactorKit 샘플 앱 - RxDataSources을 이용한 Section, Item 모델 구현 패턴 (with 동적 사이즈 셀) 기초 ReactorKit 개념 RxDataSources 개념 Reusable 개념 목차 1. 단일 Section 모델 2. 다중 Section 모델 3. 다중 Section, 다중 Item 모델 구현 핵심 SectionModel 정의 및 활용 방법 Section이 하나인 경우에는 SectionModel으로, Section에는 Int형을 사용 (가장 간단한 방법은 tableView.rx.items 방법 포스팅 글 참고) // Section이 하나인 경우 import RxDataSources st..
해당 글에서 편리함을 위해 사용된 다른 프레임워크 참고 RxSwift, RxCocoa RxDataSources Kingfisher Reusable Then Moya 프레임워크 Alamofire를 Wrapping한 모듈 (Moya는 직접적인 네트워킹을 수행하지 않고 단순히 Alamofire의 추상화) Moya로 구현한 layer가 Networking layer 자체가 되므로, 별도의 Networking layer를 만들지 않아도 되는 간편함이 존재 Moya는 Request에 관한 endpoint가 enum으로 정의하는 구조이므로 type-safe 방식으로 네트워킹 요청가능 testable한 네트워킹 레이어 구축이 편리 (stub 이용) 예제에서 사용할 API Flickr API: 사진 공개 피드 api u..
1. ReactorKit 샘플 앱 - RxDataSources 사용 방법 2. ReactorKit 샘플 앱 - RxDataSources을 이용한 Section, Item 모델 구현 패턴 (with 동적 사이즈 셀) 기초 ReactorKit 개념 RxDataSources 개념 Reusable 개념 ReactorKit + RxDataSources 사용 방향 RxDataSources를 사용하면 extension으로 따로 tableView의 cellForRowAt 메소드를 따로 빼지 않아도 간결한 코드 작성이 가능 Cell에 사용될 상태 관리 전용 Reactor 생성 Cell에 UI를 업데이트 할 때 이 Reactor 인스턴스를 받아서 사용 정의한 Cell 클래스에 bind(reactor:) 함수를 정의하여, ..
Reusable 프레임워크 Cell 등록 시 편의성 향상 문자열을 입력하지 않고, 클래스만 입력하여type-safe하므로 컴파일 타임에 오류 감지 가능 Reusable 미적용 - tableView에 cell을 등록하고 cell을 리턴 할 경우 // cell 등록 tableView.register(MyTableViewCell.self, forCellReuseIdentifier: "MyTableViewCell") // dequeue cell let cell = tableView.dequeueReusableCell(withIdentifier: "MyTableViewCell", for: indexPath) as! MyTableViewCell Reusable 적용 - tableView에 cell을 등록하고 ce..
1. Kingfisher 프레임워크 (이미지 캐싱, 이미지 로드) - 사용 방법 2. Kingfisher 프레임워크 (이미지 캐싱, 이미지 로드) - .processor, progressiveJPEG 옵션 Kingfisher 기능 이미지 로드 기능 (url을 넘겨주면 이미지 로드) 이미지 캐시 기능 UIImageView에 편리하게 round 처리 기능 이미지 다운로드 기능 의존성 cocoapods 사용 시 설치 pod 'Kingfisher' 이미지 로드 기능 이미지 단순히 불러오기 - .kf.setImage(with:) private func loadImage() { guard let url = URL(string: "https://live.staticflickr.com/65535/51734305911..
위와같이 앨범과 카메라를 선택할 수 있는 UIImagePicker가 구현된 프레임워크 ImagePicker라는 open class로 제작되어 있으며, UIImageView이며 클릭시 작동 * source code : github.com/JK0369/ImagePickerFramework
* framework : https://github.com/JK0369/JKMapViewController * 이미지 크기는 화면 크기의 0.1배