
Grid 뷰는 horizontal Direction 으로 사진을 배열하여 화면을 구성하기 쉽다.
기본 코드
struct ContentView: View {
let data = Array(1...1000).map { "목록 \($0)"}
let columns = [
GridItem(.adaptive(minimum: 100))
]
var body: some View {
ScrollView {
LazyVGrid(columns: columns, spacing: 20) {
ForEach(data, id: \.self) { i in
VStack {
Capsule()
.fill(Color.yellow)
.frame(height: 50)
Text(i)
.forgroundColor(.secondary)
}
}
}
.padding(.horizontal)
}
}
}
- GridItem(.adaptive(minimum: )) 레이아웃 최소 사이즈를 정한 후 화면을 그리드 형식으로 꽉 채울 수 있다. GridView 만 이용할 경우 화면을 초과한 경우 보이지 않기 때문에 ScrollView 도 추가한다.
- 표현할 그리드의 개수나 크기를 지정
실행 화면

GridItem 속성
- .adaptive() : 레이아웃 사이즈를 지정
- .flexibel() : 최솟값과 최대값을 할당해줘도 되지만, 모두 쓰지 않으면 기본값으로 자동으로 화면을 꽉 채움
개발자 Document
Apple Developer Documentation
developer.apple.com
'Language > Swift' 카테고리의 다른 글
SwiftUI를 이용한 Shape 지정하기 (0) | 2022.12.09 |
---|---|
SwiftUI를 이용한 뷰를 겹겹이 쌓기 (ZStack) (0) | 2022.12.08 |
SwiftUI에서 GeometryProxy 사용하기 (0) | 2022.12.01 |
SwiftUI AspectRatio / GeometryReader 이용하기 (0) | 2022.11.29 |
SwiftUI를 이용한 탭 메뉴 만들기 (TabView) (0) | 2022.11.26 |
댓글