var body: some View는 기본적으로 Vstack인가요?
357
投稿した質問数 4
@state강의에서 Zstack밑에 Hstack을 넣는데 Vstack안에서 쌓는게아니라 단순히 Zstack과 Hstack이 위아래로 배치되는데아무것도 명시하지않을때는 기본적으로 Vstack처럼 동작하는지 궁금합니다
回答 2
0
안녕하세요 Ryan입니다. 먼저 좋은 질문 주셨는데 빠르게 확인하지 못해 양해 부탁드립니다.
먼저 결론부터 말씀드리자면 View에서 보이는 면에서는 VStack으로 명시한 것과 않았을 때 동일한 것처럼 보일 수 있습니다.
다만 layout을 갖고 있느냐 없느냐의 차이가 나게 됩니다.
SwiftUI는 특정 layout을 지정하지 않고 Tuple View를 사용하여 View 컬렉션을 나타냅니다.
layout은 전적으로 Tuple View의 컨테이너에 의해 결정되기 때문에 Vertical layout을 의도하였다면 VStack을 명시적으로 사용해야 하는 거죠.
만약 그렇지 않다면 HStack에선 해당 component가 쌓이게 되면 수평으로, ZStack에선 Component 중첩이 되어 개발자가 의도했던 결과를 컨트롤 할 수 없는 상황이 됩니다.
그래서 View에서 렌더링 된 모습은 같아 보이지만 Vertical Layout을 적용하려면 VStack을 명시하여 의도 된 개발을 할 수 가 있습니다.
좋은 질문이어서 다른 분들에게도 도움이 될 것 같습니다. 끝까지 달려주세요👍
0
안녕하세요, 인프런 AI 인턴입니다.
var body: some View에서 기본적으로 VStack으로 쌓이지는 않습니다. SwiftUI에서는 View를 구성할 때 명시적으로 사용할 Stack을 결정해야 합니다. VStack, HStack, ZStack은 모두 다르게 동작하며 각각의 Stack을 사용하여 원하는 방향으로 View를 배치할 수 있습니다. VStack은 수직 스택, HStack은 수평 스택, ZStack은 깊이(Z축 방향)에 따른 쌓기를 나타냅니다. 아무것도 명시하지 않으면 View들은 단순히 나열되지 않고, 오류가 발생하거나 예상치 못한 방식으로 렌더링될 수 있습니다. 따라서 원하는 레이아웃을 얻기 위해서는 반드시 해당 스택을 명시적으로 사용해야 합니다.
수강 기간 연장 문의
0
28
1
수강연장부탁드려도될까요..
0
42
2
Combine Playground 에서 실행 시
0
58
2
70강 - 글로벌 액터로 격리된 Protocol 을 extension 에서 conform 시 타입 본체의 격리 수준 질문
0
42
1
searchable이 화면 하단에 위치해요
0
62
2
Drawing Cycle 관련 질문
0
72
1
앱 제작 시 주로 코드로 작성하시는 이유가 있을까요?
0
95
2
델리게이트 패턴 관련 질문
0
66
2
ios 애드몹 광고
0
134
2
수강 기간 연장 부탁드릴 수 있을까요?
0
61
1
활용 앱 57강 질문입니다.
0
55
1
그래프 그리기 위한 API가 프리미엄 요금제를 구독해야만 가능하다고 합니다...ㅜㅜ
0
76
2
과거 ai없을때 듣고 다시 듣는 중인데
1
55
1
활용 앱 30강 에러 질문입니다
0
64
2
예제 빌드시 The compiler is unable to type-check this expression in reasonable time 에러 발생
0
54
1
TextField 에 Binding 으로 연결하면 에러 발생
0
55
1
xcode 26.2 에서 ReducerOf<Self> 이슈
0
77
2
20강 Task 내부에서 nonisolated async 호출 예제 질문드립니다
0
78
2
19강 Actor 의 동작 관련해 질문드립니다
0
83
2
기초앱 17강 Contraints 설정 질문입니다.
0
67
2
소리가 ㅠㅠ
0
54
2
실로폰 음원 재생 오류 해결 (do.1.wav)
1
72
2
마지막 생성자 코드에서 enum이 안쓰이고 있는거 같아요
0
107
1
파트2 개강 예정시기
3
539
4

