티스토리 뷰
App
SwiftUI에서 앱의 구조, 행위를 표현하는 타입
Declaration
선언
Overview
개요App 프로토콜을 채택, 준수하는 구조체를 생성할 수 있습니다.
그 후, App 컨텐츠를 정의하기 위해 해당 구조체의 컨텐츠부에 계산프로퍼티 body를 구현해줍니다. 그 구현예시는 아래와 같습니다.
SwiftUI로 앱을 구현할 때, 해당 앱의 진입점을 제공하는 앱 프로토콜 준수자를 위 코드와 같이 정의할 수 있습니다.
이때 정의된 MyApp 구조체 위에 @main 주석(annotation)을 명시해야 합니다.
App 프로토콜은 해당 앱이 런칭 될 때 호출되는 main() 메서드의 기본 구성을 지원합니다. 하나의 앱 파일 중에는 반드시 단 하나의 진입점만 존재하도록 구성해야 합니다.
이후, Scene 프로토콜을 준수하는 인스턴스로 부터 앱의 body를 구성합니다. 각각의 씬(Scene)들은 뷰계층의 루트 뷰를 포함하며, 시스템에 의해 관리되는 생애주기를 갖습니다.
SwiftUI는 구체적인 Scene 타입을 제공하며 이는 문서, 세팅 등을 표현하기 위한 공통의 시나리오들을 처리합니다. 아래와 같이 App 프로토콜을 준수하는 구조체 내부에 커스텀 Scene를 을 생성할 수 있습니다.
모든 각 Scene 들 간의 공유를 위해 앱 내에 상태(State)를 선언할 수도 있습니다.
그 예로, 당신은 데이터 모델 초기화를 위한 StateObject 속성을 사용할 수 있습니다.
그리고 이때 뷰 입력에 해당 모델을 ObservedObject나 EnvironmentObject로서 앱 내의 Scene으로 제공할 수 있습니다.
앱 내에 ObservedObject, EnvironmentObject 등으로 모델을 전달하는 방법은 아래와 같습니다.
위의 코드에서 StateObject인 MailModel 인스턴스, model이 WindowGroup 블럭 내에서는 environmentObject로서, Setting 블럭 내에서는 ObservedObject로서 전달되어지는 모습을 볼 수 있습니다.
'iOS 개발 > 개발자문서 정보' 카테고리의 다른 글
SwiftUI 프로토콜, View 역할 및 속성 적용방법 (0) | 2020.08.08 |
---|---|
SwiftUI Views and Controls, 뷰와 컨트롤 개요 (0) | 2020.08.07 |
SwiftUI 문서, Scene 프로토콜 개요 알아보기 (0) | 2020.08.04 |
애플 앱 개발 프레임워크, SwiftUI 알아보기 (0) | 2020.08.03 |
Swift 문서, 제네릭 범위 구조체 Range 알아보기 (3) | 2020.08.02 |
- Total
- Today
- Yesterday
- SwiftUI
- Swift 알고리즘
- Collection
- createML
- 김프매매
- swift언어
- 프로토콜
- 부스트코스
- 알고리즘문제
- 프로그래머스swift
- swift문제
- ios
- 백준swift
- swift알고리즘
- 컬렉션
- CoreML
- uikit
- swift
- swift 기초
- swift 문자열
- 자연어처리
- publisher
- Protocol
- swift string
- 스위프트
- swift reduce
- 개발자문서
- 알고리즘
- 프로그래머스
- 백준알고리즘
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |