GeometryReader
- 이런식으로 GeometryReader의 가로, 세로 크기를 사용할 수 있다
GeometryReader { gp in
VStack {
Text("Width: \(gp.size.width)")
Text("Height: \(gp.size.height)")
Rectangle()
.frame(width: gp.size.width/2, height: gp.size.height/2)
}
.frame(maxWidth: .infinity, maxHeight: .infinity)
}
.ignoresSafeArea()
- 컴포넌트 위치시키는 방법
- 아래 코드는 중앙에 위치시킨다
.position(x: gp.size.width / 2, y: gp.size.height / 2)
- 이런식으로 GeometryReader의 좌표를 나타낼 수 있다
List(0 ..< 50) { item in
GeometryReader { gp in
Text("Y: \(Int(gp.frame(in: .global).minY))")
.foregroundColor(Int(gp.frame(in: .global).minY) < 300 ? .green : .primary)
}
}
