일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Clean Code
- collectionview
- RxCocoa
- ios
- uitableview
- 리펙터링
- clean architecture
- 애니메이션
- UICollectionView
- tableView
- uiscrollview
- rxswift
- Refactoring
- 리펙토링
- ribs
- swiftUI
- Human interface guide
- swift documentation
- 리팩토링
- 클린 코드
- Observable
- map
- HIG
- SWIFT
- Protocol
- MVVM
- combine
- 스위프트
- Xcode
- UITextView
- Today
- Total
목록Resource (2)
김종권의 iOS 앱 개발 알아가기
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/AbCZh/btqT8IS6T9R/0KmtiAci9I507fI6ysyIk1/img.png)
R.swift 프레임워크 사진, 문자열, Localizable과 같은 Resource에 접근할 때 key값으로 접근 가능 Assets.xcassets파일에 있는 Resource들을 코드로 접근 가능: UIImage(named: "커스텀") -> R.image.커스텀 Localizable과 같이 사용하면 컴파일 타임에 해당 문자열 키가 존재하는지 체크 가능 (만약 존재하지 않으면 컴파일에러 발생) 빌드할 때마다 R.generated.swift파일 생성 R.generated.swift파일 생성 종속성 pod 'R.swift' 빌드 시, 프레임워크를 통해 R.generated.swift파일을 생성하기 위해 Build Phases에서 Run script 생성 후에 아래와 같이 작성 "$PODS_ROOT/R.sw..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bwGIgH/btqE6MB6HSb/n3KkTCDEfricnED6TYbJKK/img.png)
Share() 연산자는 자원을 공통으로 사용 할 수 있게끔 하는 개념 1. Share을 쓰는 이유 1) MVVM설계 // ViewModel 정의 class SomeViewModel { let result = userTappedButton .flatMapLatest {apiService.rx.getFriend() } name = result.map {$0.name} phone = result.map {$0.phone} } // ViewController에서 ViewModel과 UI연결 class { ... viewModel.name .bind(to: lblName.rx.text) // UI와 ViewModel간의 연결 .disposed(by: bag) viewModel.phone .bind(to: lblP..