인프런 커뮤니티 질문&답변

조승범님의 프로필 이미지
조승범

작성한 질문수

[Lv.1] 누구나 할 수 있는 - SwiftUI Basic with iOS 17

Frame

Frame에 대한 개념 질문

해결된 질문

작성

·

192

0

 

"뷰는 자신의 콘텐트와 자신이 속한 레이아웃에 따라 자동으로 크기가 조절됩니다. 하지만 frame 수정자를 사용하여 뷰의 크기나 영역을 조절 할 수 있습니다."

프레임은 해당 글과 같은 역할을 한다고 볼 수 있을거 같은데 아래 실습을 통해 추가적으로 이해를 해보려고 하면

 

  VStack(spacing: 20){

            Text("Hello World!")

                .font(.title)

                .background(Color.red)

                .frame(height: 100, alignment: .top)

            // 100프레임에 대한 컨텐츠는 위에 붙게됨

                .background(.orange)

                .frame(width: 200)

                .background(Color.purple)

                .frame(maxWidth: .infinity, alignment: .leading)

                .background(Color.pink)

                .frame(height: 400)

                .background(Color.green)

                .frame(maxHeight: .infinity, alignment: .top)

                .background(Color.yellow)

            

            }

 

실질적으로 뷰의 크기나 영역을 frame 함수를 통해 조각조각 붙여나가는 방식으로 구현한다.라고 정리될 거 같습니다. 제가 이해한 게 맞는지 궁금합니다. 이런 식으로 조각을 붙여가면서 구현을 하는 개념으로 이해해도 되는 건지...

답변 1

0

Jacob(제이콥)님의 프로필 이미지
Jacob(제이콥)
지식공유자

안녕하세요 조승범님.

SwiftUI 에서 frame 은 View 타입 안에서 사용하는 Modifier 형태로서 .frame() 형태로 사용되어 지는데 위의 실습 코드를 통해서 보면 frame 형태 안에서 object 의 크기를 정한다고 보시면 됩니다.

위의 코드에서 프리뷰를 보시게 되면 조각조각 붙여 나간다고 보실수도 있는데요, 실제로는 code 순서에 따라서 중복되는 부분이 덮어 씌워 진다고 보시면 됩니다.

조승범님의 프로필 이미지
조승범

작성한 질문수

질문하기