Programing Langauge/swift

@DynamicProperty

Hamp 2025. 10. 24. 12:54
반응형

어디서 봤을까?

 

@State, @Environment, @ObservedObject 같은 property wrapper에서 발견된다.

 

이들의 공통점은 뭘까?? 

 

🧩 역할

An interface for a stored variable that updates an external property of a view.

 

뷰를 업데이트 하는 외부 저장 변수에 대한 인터페이스

조금말이 어렵다. 간단히 얘기하면, 뷰 상태에 영향을 주는 객체는 채택해야한다는 것!

 

SwiftUI가 이 프로퍼티의 변화를 자동으로 추적해야 한다”는 것을
컴파일러와 런타임에게 알려주는 역할


DynamicProperty
를 채택한 프로퍼티는 SwiftUI의 view 업데이트 사이클과 연동되어 자동으로 갱신

 

🧱 구조

public protocol DynamicProperty {
    mutating func update()
}

 

update라는 함수를 갖고 있어며,

update()는 SwiftUI가 뷰를 그리기 전에 자동으로 호출해서, 이 프로퍼티의 내부 상태를 최신으로 유지


출처

https://developer.apple.com/documentation/swiftui/dynamicproperty

 

반응형