일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- UITextView
- tableView
- 클린 코드
- swift documentation
- Protocol
- ios
- ribs
- 리팩토링
- map
- 리펙터링
- 리펙토링
- Clean Code
- UICollectionView
- HIG
- Human interface guide
- swiftUI
- clean architecture
- rxswift
- Xcode
- uitableview
- combine
- RxCocoa
- MVVM
- uiscrollview
- 스위프트
- SWIFT
- 애니메이션
- collectionview
- Observable
- Refactoring
- Today
- Total
목록iOS 응용 (SwiftUI) (57)
김종권의 iOS 앱 개발 알아가기
generic과 opaque type 개념generic은 타입의 유연성을 제공하여 사용하는쪽에서 타입을 정하게끔하는 방법ex) generic을 사용하는 가장 대표적인 예제 - Stack 구현struct Stack { private var elements: [Element] = [] mutating func push(_ element: Element) { elements.append(element) } mutating func pop() -> Element? { elements.popLast() } func peek() -> Element? { elements.last } func isEmpty()..
@State를 사용하면 mutating 없이도 사용이 가능아래처럼 @State를 프로퍼티에 붙여서 사용하면 change()함수에서 mutating 키워드가 없더라도 문제없이 동작struct MyStruct { @State var val = 0 func change() { val = 0 }}struct이기 때문에 값을 변경하려면 원래 mutating키워드가 필요하지만 @State를 사용하면 mutating 없이 사용이 가능struct MyStruct { var a1 = 0 func change() { a1 = 2 // Cannot assign to property: 'self' is immutable }}computed property..
@State, @Bindable 이란?@State 개념양방향 바인딩 (프로퍼티 뷰)@State는 Property wrapper로 구현되었으며 뷰의 상태를 표시해줄 목적으로 있는 키워드이 키워드로 프로퍼티를 선언하고 이 키워드를 뷰에 입력해주면, 이 프로퍼티가 변경되면 자동으로 뷰도 변경됨ex) string이라는 프로퍼티를 @State로 선언하고, 이 프로퍼티를 Text(string)으로 Text 뷰에 넣어준 후, string 프로퍼티 값을 변경해주면 자동으로 Text뷰에 반영됨import SwiftUIstruct ContentView: View { @State var string = "..." var body: some View { VStac..
1. List 형태 UI - @State를 활용하여 로딩 상태, 로드 상태, 실패 상태 띄우기2. List 형태 UI - pull to refresh, 페이지네이션 구현 방법 (List, refreshable, pagination, @Sendable)3. List 형태 UI - 검색된 결과 UI에 보여지게 하는 방법 (검색창, searchable)1, 2번 글 복습)SwiftUI에서는 @State 프로퍼티를 사용하면 손쉽게 상태 변경이 가능단순히 @State 프로퍼티만 변경해도 알아서 바인딩되어 뷰도 변경pull to refresh는 List의 메소드인 refreshable를 사용하면 되고, pagination은 onAppear을 통해서 쉽게 구현이 가능전체 코드: https://github.com/JK..
1. List 형태 UI - @State를 활용하여 로딩 상태, 로드 상태, 실패 상태 띄우기 2. List 형태 UI - pull to refresh, 페이지네이션 구현 방법 (List, refreshable, pagination, @Sendable) 3. List 형태 UI - 검색된 결과 UI에 보여지게 하는 방법 (searchable) 복습) 1번 글까지 한 것 @State로 선언된 프로퍼티를 활용하면 매우 쉽게 상태 표현이 가능 뷰 코드에서 이 프로퍼티에 관한 switch문을 활용하여 상태에 따라 뷰를 다르게 보여주는 코드를 준비해 놓고, 프로퍼티만 변경되면 자동으로 바인딩되어 뷰가 변경됨 코드: https://github.com/JK0369/ExListSwiftUI.git struct Con..
1. List 형태 UI - @State를 활용하여 로딩 상태, 로드 상태, 실패 상태 띄우기 2. List 형태 UI - pull to refresh, 페이지네이션 구현 방법 (List, refreshable, pagination, @Sendable) 3. List 형태 UI - 검색된 결과 UI에 보여지게 하는 방법 (searchable) 상태 처리 핵심 개념 - @State List형태의 UI를 구현하면 항상 로딩, 성공, 실패에 따라 UI를 다르게 보여주어야 하는데 이 때 SwiftUI의 @State를 활용하면 매우 쉽고 빠르게 구현이 가능 enum으로 로딩, 성공, 실패에 관한 정의를 하고 이 enum 타입의 프로퍼티를 @State로 선언하면 쉽게 상태 관리가 가능 목표) @State로 3가지 ..
1. Swift Charts 사용 방법 (#주식 차트, 주가) - BarMark 2. Swift Charts 사용 방법 (#주식 차트, 주가) - LineMark, RuleMark Swift Chart 개념 (이전에 알아본 개념) iOS 16+에서 사용가능 SwiftUI에서 제공하는 Chart를 사용하면 매우 쉽게 차트 그리기가 가능 LineMark 사용 LineMark: 그래프에서 (x, y)좌표들을 연결해 놓은 주식 차트 같은곳에서 사용 예제에 사용할 Date 구조체 정의 struct Data { let name: String = "jake" let date: Date let value: Int } let datas = [ Data(date: .now, value: 10), Data(date: .no..
1. Swift Charts 사용 방법 (#주식 차트, 주가) - BarMark 2. Swift Charts 사용 방법 (#주식 차트, 주가) - LineMark, RuleMark Swift Chart 개념 iOS 16+에서 사용가능 SwiftUI에서 제공하는 Chart를 사용하면 매우 쉽게 차트 그리기가 가능 Swift Chart 사용 방법 import Charts로 모듈 import import SwiftUI import Charts 차트에 들어갈 모델 정의 struct ToyShape: Identifiable { var type: String var count: Double var id = UUID() } data정의 struct ContentView: View { var data: [ToyShap..