티스토리 뷰

IT/iOS

Bounds 와 Frame 의 차이점

미닉길 2021. 12. 9. 14:53
반응형

안녕하세요. 도미닉입니다.

오늘은 Bounds 와 Frame 에 대해서 알아보겠습니다.

우선 Frame 이 무엇인지에 대해 정리해보겠습니다.

frame 이란?

The frame rectangle, which describes the view’s location and size in its superview’s coordinate system.

공식 문서에 위와 같이 설명합니다.

frame 은 사각형이고 슈퍼 뷰의 좌표 체계 안에서 뷰의 위치와 사이즈를 설명한다고 합니다.

공식 문서에 아래 Discussion 도 번역해보겠습니다.

Discussion

이 사각형은  슈퍼 뷰의 좌표계에서 뷰의 크기와 위치를 정의합니다.
레이아웃 작업 중에 이 사각형을 사용하여 뷰의 크기와 위치를 설정합니다.
이 속성을 설정하면 center 프로퍼티에 지정된 point 가 변경되고 이에 따라 bounds 의 크기가 변경됩니다.
프레임 사각형의 좌표는 항상 point 로 지정됩니다.

아래 Bounds 에 대해서 알아보고 같이 비교하면서 좀 더 이해해봅시다.

bounds 란?

The bounds rectangle, which describes the view’s location and size in its own coordinate system.

공식 문서에 위와 같이 설명합니다.

bounds 는 자체 좌표계에서 뷰의 위치와 크기를 설명하는 bounds 사각형이라고 합니다.

bounds 는 경계라는 의미인데 자체적인 좌표에서 뷰의 위치와 크기를 설명해주는 사각형의 경계라고 이해가 됩니다.

공식 문서 아래 Discussion 도 번역해보겠습니다.

Discussion

기본 Bounds 의 origin 은 (0,0) - 좌측 상단이며 크기는 frame 속성의 사각형 크기와 대부분의 경우 동일합니다.(뷰가 기울어져있다면 frame은 뷰를 전체 다 감쌀 수 있을 정도로 커지며, bounds는 뷰의 사이즈와 동일하다.)
size 를 변경하면 원점을 기준으로 view 가 커지거나 줄어듭니다.
size 를 변경하면 또한 frame 속성의 사각형 크기도 동일하게 변경됩니다.(이 경우도 뷰가 기울어져있다면 다를 것이다)
bounds 사각형의 좌표는 항상 points 로 지정됩니다.

frame 과 bounds 의 차이

frame 은 그리는 것과 전혀 연관이 없습니다.

bounds 그리는 것과 연관이 깊습니다.

frame 과 center는 드로잉을 하는 곳이 어딘지를

bounds는 지금 드로잉하는 곳을 말합니다.

frame 은 슈퍼 뷰로부터 현재 뷰의 위치와 사이즈를 확인하는데 사용합니다.
bounds 는 현재 뷰 내부에 뷰의 사이즈를 결정하는데 사용합니다.

 

정리

글로만 작성하니 이해가 어려운 것 같습니다.

해당 예제 코드를 유튜브로 찍어서 공유하도록 하겠습니다.

글 읽어주셔서 감사합니다.

참고

https://developer.apple.com/documentation/uikit/uiview/1622621-frame
https://developer.apple.com/documentation/uikit/uiview/1622580-bounds
https://zeddios.tistory.com/203
https://zeddios.tistory.com/231
https://sihyungyou.github.io/iOS-frame-bounds/

 

iOS) Frame vs. Bounds

프레임과 바운드의 차이점 알아보기

sihyungyou.github.io

https://www.edwith.org/swiftapp/lecture/19421/?isDesc=false 

 

[LECTURE] 뷰에 나타내기 : edwith

들어가기 앱을 만드는 과정에서는 다양한 요인들에 의해서 오류가 발생할 수 있습니다. 이와 같은 오류는 Swift에서는 어떤식으로 대처하는지 살펴보도록 합시다. 뿐만아니라 Any, ... - 커넥트재

www.edwith.org

 

반응형
댓글
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
글 보관함