스위프트UI 튜토리얼 챕터1 SwiftUI Essentials/챕터1-기초3: 사용자 인풋 다루기(6 섹션)

SwiftUI 튜토리얼 [챕터1-기초3-섹션4: 저장된 옵저버블 오브젝트 사용하기]

히오나 2023. 7. 6. 13:21
728x90

섹션4

저장된 옵저버블 오브젝트(observable object: 식별가능한 객체) 사용하기

 

유저가 어떤 랜드마크를 선호하는지 조정하기 위해서, 첫 번째로 랜드마크 데이터를 observable object에 보관할 것이다.

옵저버블 오브젝트는 스위프트유아이 환경 안의 저장소안의 뷰에 구속될 수 있는 데이터의 커스텀 객체(object)이다.

SwiftUI는 observable object의 어떤 변경이 있을 때 잘 살피며, 이것은 뷰에 영향을 주며, 변경 후에는 맞는(correct) 버전의 뷰를 디스플레이한다.


스텝1

프로젝트의 navigation pane에서, ModelData.swift 를 선택한다.


스텝2

Combine (컴바인;조합) 프레임워크로부터 ObservableObject프로토콜에 일치하는 새로운 model타입을 선언한다.

-스위프트유아이는 당신의 observable object를 구독하며, 데이터 변경 후, 새로고침이 필요한 모든 뷰를 업데이트한다.


스텝3

랜드마크 배열을 모델 안으로 옮긴다.


*옵저버블 오브젝트는 데이터에 변경이 생기면 공개발행을 하고, 그러면, 그 구독자들이 변경사항을 채택한다.

 

스텝4

@Published애트리뷰트 를 landmark 배열에 추가한다.

섹션 4완료

다음 섹션5

 

https://ingodwelove.tistory.com/24

 

SwiftUI 튜토리얼 [챕터1-기초3-섹션5: 뷰의 모델 객체 채택하기]

섹션5 Model Object 채택하기 ModelData 객체를 만들었으니, 이제, 이것을 앱 데이터 저장으로서 채택하고, 뷰를 업데이트해야 한다. 스텝1 LandmarkList.swift의 @EnvironmentObject프로퍼티 선언을 뷰에 추가하

ingodwelove.tistory.com

 

728x90