해결된 질문
작성
·
154
·
수정됨
0
// 2. LazyHGrid
struct LazyGridBasic2: View {
// LazyHGrid
// title 을 1000 개 변수로 생성
// ["목록 1","목록 2", ... "목록 30"] [String]
let title: [String] = Array(1...30).map {"목록 \($0)"}
// 화면 그리드형식으로 채워줌
let rows: [GridItem] = [
GridItem(.flexible(maximum: 80)),
GridItem(.flexible(maximum: 80)),
GridItem(.flexible(maximum: 80))
]
var body: some View {
// 2 - LazyHGrid
// ScrollView horizontal
ScrollView(.horizontal) {
LazyHGrid(rows: rows,
spacing: 20,
content: {
ForEach(title, id:\.self) { item in
VStack {
Capsule()
.fill(Color.yellow)
.frame(height: 30)
Text(item)
.foregroundColor(Color.blue)
}
}
})
}
}
}
30개 LazyHGrid 사용시
한줄일때는 30개가 노출되는데
3줄일때는 27개만 노출 됩니다. 왜 이럴까요 ?
강의 관련된 질문은 언제나 환영입니다 😄
코드 관련 상세하게 작성해주시면 더 좋아요! (상세코드를 붙여넣기 해주세요)
마크다운을 사용해서 편리하게 글을 작성하세요
먼저 유사한 질문이 있었는지 먼저 검색 해보는 습관~
인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요
답변 1
0
안녕하세요 랑프 님.
질문주신 LazyGridBasic2 에서 30을 입력 했는데 Preview 상에서 27 까지만 나오는 것을 확인 했습니다.
Simulator 로 확인한 결과 마지막 30까지 출력이 되었습니다. 가끔 Preivew 에서 특정 error 로 인해 정확히 구현 되지 않는 기능들도 있기 때문에 발생되는거 같습니다.
cmd + R 으로 파일을 빌드 하셔서 Simulator 상에서 확인 부탁드립니다
감사합니다.