이전 시간에는 변수(계산 속성)에다 스택 등을 담았다면, 이번에는 아예 subview로 추출하는 방법으로 코드를 정리해 보자.
구조체를 따로 만드는 방식인데, 생성자를 이용해서 구성은 같지만 내용물은 다른 뷰들을 쉽게 반복해서 그려낼 수 있다.
(생성자를 따로 커스텀 하지 않는 이상, 멤버와이즈 이니셜라이즈 활용)
먼저 아래부터 MyItem이라는 서브뷰를 만들고 title, count, color 세 프로퍼티가 있다.
이를 활용해 (생성자를 통해) 다양한 뷰 인스턴스를 찍어낼 수 있다.
HStack으로 묶인 서브뷰들을 contentLayer 변수에 담았고 이를 body에서 호출한다.
ForEach, 그리고 각 프로퍼티에 할당할 값들을 배열 등으로 관리하면 더욱 효율적으로 많은 뷰들을 생성할 수 있을 것이다.
'SwiftUI > SwiftUI(Basic)' 카테고리의 다른 글
21. [SwiftUI] 조건문(if/else) (0) | 2023.04.23 |
---|---|
20. [SwiftUI] @Binding (0) | 2023.04.23 |
18. [SwiftUI] Extract Functions & Views (코드 정리) (0) | 2023.04.21 |
17. [SwiftUI] @State (0) | 2023.04.21 |
16. [SwiftUI] Button() (0) | 2023.04.20 |