# 지오메트리 리더
지오메트리 리더는 부모가 기본적으로 갖는 레이아웃 수치를 기반으로 자식 레이아웃의 구체적인 사이즈를 결정할 수 있게 해준다.
VStack
에 두개의 Color
뷰가 배치된다고 생각해보자.
VStack(spacing: 0) {
Color.red
Color.yellow
}
이렇게 되면 VStack
안에서 두개의 컬러뷰가 공평하게 두 공간을 쪼개어 갖는 것이 SwiftUI에서의 기본 레이아웃이다.
스택뷰를 3등분하여 Color.red
가 2/3 영역을 차지하도록 코드를 작성하고싶다면 지오메트리 리더를 사용하면 된다.
GeometryReader { layout in
VStack(spacing: 0) {
Color.red
.frame(height: layout.size.height * 0.67)
Color.yellow
}
}