일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- DynamicIsland
- 3주차
- KoreaMango
- fruta
- test
- 개발자
- WWDC
- unittest
- 2023
- wwdc2023
- 프로그래머스
- 2주차
- Swift
- 콩세알프로젝트
- Unit
- ios
- ActivityKit
- @Model
- 대학생협
- tutorials
- xcode15
- letswift
- RxSwift
- watchkit
- SwiftData
- 회고
- 1주차
- tutorial
- swiftUI
- watchapp
- Today
- Total
목록ios (29)
KoreaMango 나무
Apple Developer Documentation developer.apple.com 1. Persisting Data 이번 장에서는 scrum을 Load하고 Save하기 위한 메소드와 앱의 모델을 위해 Codable을 추가할 것이다. Section 1. Add Codable Conformance 이 섹션에서 Model에 Codable을 추가할 것이다. Codable이란 Encodable 과 Decodable을 결합한 type 별칭이다. 이 프로토콜을 사용해서 구현할 때, Codable API는 JSON 파일을 구현화하기에 더 쉽게 만들어준다. enum Theme: String, CaseIterable, Identifiable, Codable { ... } struct History: Identifi..
Apple Developer Documentation developer.apple.com 4. Updating App Data 이번 파트에서는 DetailEditView에서 생성한 데이터를 저장하는 방법에 대해 알아보자. Section 1. Use the Edit View to Create a New Scrum @State private var isPresentingNewScrumView = false DetailEditView를 보여줄지 안보여줄지 컨트롤하는 변수를 만들어준다. @State private var newScrumData = DailyScrum.Data() var body: some View { List { ... } .navigationTitle("Daily Scrums") .toolba..
Apple Developer Documentation developer.apple.com 3. Managing State and Life Cycle Section 1. Create an Overlay View struct MeetingView: View { @Binding var scrum : DailyScrum var body: some View { ZStack { RoundedRectangle(cornerRadius: 16.0) VStack{ ... } } } } ZStack를 최상단에 추가해서 앞뒤의 간격을 주었다. ZStack은 먼저 나온 View가 맨 뒤에 배치하게 된다. 따라서 RoundedRectangle이 맨 뒤에 배치되고 그 앞으로 VStack이 나열된다. 그리고 @Binding scru..
Apple Developer Documentation developer.apple.com 2. Responding to Events Scene Architecture Scene은 시스템이 관리하는 수명주기가 있는 앱의 UI의 일부이다. 앱을 만들기 위해서는 앱 프로토콜을 준수하는 구조를 정의해야한다. @main 속성을 앞에 둠으로써 시작점이 이곳이라는 것을 시스템에게 알릴 수 잇다. 앱 구조 내에 Scene 프토토콜을 준수하는 장면을 하나 이상 추가한다. Scene은 앱이 보여지는 View 계층의 컨테이너이다. 예를 들어 iOS와 watchOS는 하나의 Scene을 보여줄 수 있지만, macOS와 iPadOS는 여러 Scene을 보여줄 수 있다. SwiftUI는 WindowGrouop 같은 원시적인 Sc..
Apple Developer Documentation developer.apple.com 1. Making Classes Observable Working with Reference Type 이전 챕터에서는 @State, @Binding property wrappers를 사용하여 View 계층에서 업데이트를 트리거하기 위해 진실 소스를 정의했다. 이번에는 앱의 UI에 대한 진실 소스로서 참조 유형을 정의하는 것을 알아본다. @State 은 오직 structures 나 enumerations 같은 Value type (값 타입)에만 작동한다. SwiftUI는 @ObservedObject, @StateObject, @EnvironmentObject 같은 reference type (참조 타입) 을 진실 소스..
0. 시작에 앞서.. Detect Body and Hand Pose with Vision - WWDC20 - Videos - Apple Developer WWDC 스터디에서 [Detect Body and Hand Pose with Vision] 영상을 보고 각자 공부를 해봤다. Vision 기술을 통해서 얼굴과 몸, 손을 인식하고 움직임까지 감지한다. 이러한 기술을 어떻게 구현하는지 설명하는 동영상이다. 그 중에 손에 대해 요약해서 말하자면 손가락 관절 하나 하나에 포인트(랜드마크)를 찍어서 포인트가 어떻게 변하는지 감지한다. 또한 ARKit 과 Vision의 차이점에 대해서도 설명하고 있다. Landmarks 는 똑같이 제공하고 개수도 같다. Confidence 는 신뢰 값이라고 하는데 Vision만 ..
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..