일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- ios
- 3주차
- 프로그래머스
- ActivityKit
- 2023
- letswift
- 2주차
- tutorials
- wwdc2023
- unittest
- 콩세알프로젝트
- swiftUI
- @Model
- Swift
- Unit
- SwiftData
- fruta
- watchkit
- DynamicIsland
- test
- 회고
- 대학생협
- xcode15
- KoreaMango
- 개발자
- RxSwift
- watchapp
- tutorial
- WWDC
- 1주차
- Today
- Total
목록전체보기 (39)
KoreaMango 나무
Apple Developer Documentation developer.apple.com Section 3. Pass the Edit View a Binding to Data struct DetailEditView: View { @Binding var data: DailyScrum.Data ... } struct DetailEditView_Previews: PreviewProvider { static var previews: some View { DetailEditView(data: .constant(DailyScrum.sampleData[0].data)) } } DetailView에서 State 변수를 받기 위해 Binding으로 data 를 선언한다. struct DetailView: View { @..
Apple Developer Documentation developer.apple.com 1. Passing Data with Bindings Section 1. Add a Theme View struct ThemeView: View { let theme: Theme var body: some View { ZStack { RoundedRectangle(cornerRadius: 4) .fill(theme.mainColor) Label(theme.name, systemImage: "paintpalette") .padding(4) } .foregroundColor(theme.accentColor) .fixedSize(horizontal: false, vertical: true) } } struct ThemeV..
Apple Developer Documentation developer.apple.com 3. Creating the Edit View Section 1. Update the Data Model struct Data { var title: String = "" var attendees: [Attendee] = [] var lengthInMinutes: Double = 5 var theme: Theme = .seafoam } var data: Data { Data(title: title, attendees: attendees, lengthInMinutes: Double(lengthInMinutes), theme: theme) } } 아래 data는 DailyScrum의 속성 값을 받고 계산된 데이터를 반환..
Apple Developer Documentation developer.apple.com 2. Managing Data Flow Between Views @State, @Binding 을 사용하여 사용자 인터페이스가 앱 데이터의 현재 상태를 반영하도록 한다. Source of Truth 정보의 여러 복사본을 관리하면 앱에서 버그를 유발할 수 있다. 따라서 각 데이터 요소에 대해 단일화 한다. 단일 데이터 요소(단일 진실 소스)를 한 곳에 저장하면, 다른 뷰가 동일한 데이터에 액세스 할 수 있다. 데이터를 어디에 저장하는지 정의하는 것은 다양한 뷰에서 공유하는지, 데이터가 변화하는지에 따라 달라진다. Swift Property Wrappers SwiftUI는 @State, @Binding 속성 래퍼를 사용..
Apple Developer Documentation developer.apple.com 1. Creating a Navigation Hierarchy Section 1. Set Up Navigation @main struct ScrumdingerApp: App { var body: some Scene { WindowGroup { NavigationView { ScrumsView(scrums: DailyScrum.sampleData) } } } } struct ScrumsView: View { let scrums: [DailyScrum] var body: some View { List { ForEach(scrums) { scrum in NavigationLink(destination: Text(scrum..
Apple Developer Documentation developer.apple.com 1. Creating a Card View Color SwiftUI 프레임 워크는 View의 인스턴스로서 color를 다룬다. 에셋 카탈로그와 이름을 같게 enum을 만들어준다. accentColor는 해당 색의 보색으로 강조할 수 있게 만들어 주는 색이다. 그 색에 맞게 하얀색과 검정색을 반환한다. 메인 칼라 함수를 써서 enum의 rawValue를 Color 타입에 넣어 초기화를 한다. View의 background에 theme의 mainColor로 초기화하는 모습 LabelStyle SwiftUI에서 제공하는 LabelStyle 프로토콜을 사용해서 앱 전체에서 일관된 스타일의 레이블을 사용할 수 있게 한다. 여..
Apple Developer Documentation developer.apple.com 개요 SwiftUI는 모든 애플 플랫폼을 위한 앱 구축 선언형 프레임 워크이다. 단일 언어와 공통된 API를 사용하여 동작과 UI를 정의한다. 다음 특징이 SwiftUI를 더 빠르고 오류를 적게 만든다. 선언 구문 간단한 Swift 구조를 사용해서 View를 정의한다. 구성 API 기본 제공 View와 Modifiers(한정자)를 사용해 UI를 빠르게 만들고 반복한다. 간단한 View 들을 구성함으로써 복잡한 View를 만든다. 강력한 레이아웃 시스템 존재하는 View와 Control들이 필요에 맞지 않는다면 직접 만들 수 있다. 앱 데이터를 반영하는 View Data가 변경되면 View를 자동으로 업데이트하여 잘못..