일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Clean Code
- Xcode
- Human interface guide
- HIG
- clean architecture
- RxCocoa
- 리펙토링
- 애니메이션
- combine
- ribs
- SWIFT
- 리팩토링
- swift documentation
- rxswift
- UITextView
- Refactoring
- MVVM
- Observable
- 스위프트
- tableView
- ios
- map
- 클린 코드
- uitableview
- 리펙터링
- uiscrollview
- UICollectionView
- collectionview
- Protocol
- swiftUI
- Today
- Total
목록foreach (5)
김종권의 iOS 앱 개발 알아가기
1. Pagination 방법 (페이지네이션, Combine) - 기초 2. Pagination 방법 (페이지네이션, Combine) - 메인 스레드 최적화, 이미지 캐싱 이미지를 불러올때 고려할 것 url을 가지고 이미지를 불러올 때, main thread에서 이미지를 가져오면 앱이 버벅이는 현상이 존재 심지어 AsyncImage를 통해서 async하게 이미지를 불러와도 앱이 버벅이는 현상이 존재 background thread에서 url을 통해 이미지를 불러오도록 구현 Image Caching 적용을 통해 조금 더 빠른 로딩이 되도록 구현 이미지 캐싱이 없다면 매번 url을 네트워킹을 통해서 이미지를 획득하므로 캐싱이 필수 구현 아이디어 url을 통해 이미지를 불러오는 코드는 background th..
가장 일반적인 List 형태 List 하위에 NavigationLink가 있는 형태 import SwiftUI struct ContentView: View { var items = (0...100).map(String.init).map(SomeModel.init) var body: some View { NavigationView { List(items){ item in NavigationLink( destination: { Text(item.val) }, label: { Text(item.val) } ) } .navigationTitle("List 예제") } } } struct SomeModel: Identifiable { let val: String var id: String { val } } 오른쪽..
목차) SwiftUI의 기본 - 목차 링크 ForEach collection형태의 데이터들에 접근하는 구조체 collection 형태인 데이터는 반드시 identifiable을 준수하는 구조체 ForEach는 collection을 순회할때 RandomAccess 방식을 사용하므로 효율적인 탐색이 가능 사용 방법 모델에 Identifiable을 준수하도록 구현 배열 collection으로 데이터 준비 private struct NamedFont: Identifiable { let name: String let font: Font var id: String { name } } private let namedFonts: [NamedFont] = [ NamedFont(name: "Large Title", fon..
목차) SwiftUI의 기본 - 목차 링크 List 형태 Hashable을 따르고, View를 준수하는 두 개의 제네릭스로 구성 struct List where SelectionValue : Hashable, Content : View 사용방법은 List 후 클로저안에 subviews들을 넣어서 구현 struct ContentView: View { var body: some View { List { Text("A List Item") Text("A Second List Item") Text("A Third List Item") } } } List(:) { } 형태로도 사용이 가능 struct Ocean: Identifiable { let name: String let id = UUID() } privat..