반응형
스위프트UI의 뷰는 class 가 아닌 struct 이다. 단순하다. 클래스 구조는 기본 클래스에도 자주 사용되지 않는 수많은 프로퍼티들이 달려있고, 이 기본 클래스를 상속받는 모든 뷰들도 이들을 다 가지고 있다.
스위프트UI의 뷰에 모디파이어가 붙으면, 이전에 만들어진 뷰에 대해 수정된 뷰가 된다.
struct ContentView: View {
var body: some View {
Button("Hello") {
print(type(of: self.body))
}
.padding()
.frame(width: 300, height: 100)
.background(.yellow)
}
}
단순한 버튼에, padding, frame, background 3개의 모디파이어가 붙어 모양이 변경된 뷰. 클릭 이벤트시에 이 뷰의 type을 찍어보면 다음과 같이 나온다.
ModifiedContent<ModifiedContent<ModifiedContent<Button<Text>, _PaddingLayout>, _FrameLayout>, _BackgroundStyleModifier<Color>>
---
ModifiedContent<
ModifiedContent<
ModifiedContent<
Button<Text>,
_PaddingLayout
>,
_FrameLayout
>,
_BackgroundStyleModifier<Color>
>
728x90
'프로그래밍 > SWIFT' 카테고리의 다른 글
SwiftUI : Primes Numbers (0) | 2022.07.10 |
---|---|
100DaysOfSwiftUI - Day 24 (0) | 2022.07.09 |
100DaysOfSwiftUI (0) | 2022.07.01 |
100DaysOfSwiftUI - Day 16 (0) | 2022.07.01 |
[Swift] error: ambiguous use of 'split(separator:maxSplits:omittingEmptySubsequences:)' (0) | 2022.06.22 |