반응형
너무 궁금해서 찾아보았다..
먼저 var body의 경우 아래와 같이 View라는 프로토콜에서 정의되어있고 computed property로 사용된다
그럼 VStack은 어떻게 동작하는가?
https://stackoverflow.com/questions/66704988/returning-multiple-view-objects-from-a-closure-in-swift
아래 코드같은경우
VStack {
Text("A")
Text("B")
}
텍스트 뷰가 두개가 동시에 리턴이 되는건가?
일단 정의부를 찾아가면 저 중괄호의 정체는 클로저라는 걸 알 수 있다.
그리고 ViewBuilder라는걸 들어가보면
buildBlock에 마지막 구현부를 보면 TupleView로 변환하는걸 볼 수 있다. 그리고 실제로 여러뷰를 튜플로 리턴한다고 한다.
대충 아래 링크에 자세히 나와있는데 너무 깊게들어가면 머리아프다...
https://github.com/apple/swift-evolution/blob/main/proposals/0289-result-builders.md
반응형
'iOS > Swift배우기' 카테고리의 다른 글
[Swift] PropertyWrapper 사용법 (0) | 2024.03.22 |
---|---|
[SwiftUI] 자식에게 State 전달하기 (0) | 2024.03.21 |
[Swift] Generic이란 (0) | 2024.03.20 |
[Swift] inout 파라미터 (0) | 2024.03.20 |
[Swift] Protocol 배우기 (0) | 2024.03.19 |
댓글