본문 바로가기

오토레이아웃4

[IOS] [AutoLayout] Safe Area와 Layout Margin Safe Area란? 말 그대로 콘텐츠를 안전하게 보여줄 수 있는 영역을 의미한다. 기본적으로 제약조건을 설정하면 safe area에 적용된다. 루트뷰에서 뷰를 하나 생성해 constraints를 모두 0으로 설정한 모습을 보면 아래와 같다. 8 플러스의 경우 콘텐츠에 방해되는 요소가 없기 때문에 화면 모두가 safe area이지만 노치와 하단바 밑 화면 곡선이 등장한 모델부터는 하단과 상단의 약간의 빈틈이 생긴 것을 볼 수 있다. Layout Margin Layout Margin 이란 view와 콘텐츠 사이의 margin을 의미한다. 인터페이스 빌더에서 우리는 constraints를 설정할 때 margin옵션을 선택할 수 있다. constrain to margin이라고 써져있는 체크박스가 마진을 포함하.. 2023. 3. 15.
[IOS] [AutoLayout] Stack View 정리 Stack View란? stack view란 오토레이아웃을 편하게 사용할 수 있도록 도와주기 위해 등장하였다. 요소를 세로(Vertical Stack View) 혹은 가로(Horizontal Stack View) 방향으로 묶어주는 역할을 한다. Stack View의 경우 콘텐츠들이 나열돼있는 방향을 토대로 수직 혹은 수평 방향을 자동적으로 적용해 준다. 따라서 수직방향으로 자동으로 스택뷰로 정렬된 모습을 볼 수 있다. 자동적으로 방향을 잡아 정렬해주지만 Axis 속성을 통해서 방향을 바꿔줄 수 있다. Stack View Property 스택뷰에는 크게 다섯가지의 속성이 있다. axis : 스택 뷰의 방향(수직, 수평)을 정의한다. (UIStackView만 해당) orientation : 스택 뷰의 방향(.. 2023. 3. 13.
[IOS] [AutoLayout] intrinsic content size와 content hugging / compression resistance intrinsic content size란? 본질적인 고유 콘텐츠 크기이다. 기본적으로 대부분의 뷰들은 콘텐츠 크기만큼의 사이즈를 가지고 있다. 고유 콘텐츠를 가지고 있는 뷰들은 콘텐츠 사이즈에 맞춰서 조건이 자동으로 만들어진다. 예를 들어 폰트 크기, 텍스트의 양, 이미지 크기 등을 고려하여 조건을 설정한다. 그래서 텍스트를 가지는 레이블의 경우 텍스트 콘텐츠 크기를 이용하여 조건이 만들어졌기 때문에 조건을 모두 지정하지 않아도 오류가 뜨지 않는다. Content hugging과 compression resistance content hugging 콘텐츠 허깅이란 콘텐츠 사이즈 이상으로 늘어나지 않으려는 힘이다. 즉 사이즈에 맞게 줄어들려고 하는 힘이다. compression resistance 컴프레.. 2023. 3. 13.
[IOS] [AutoLayout] AutoLayout이란? https://developer.apple.com/library/archive/documentation/UserExperience/Conceptual/AutolayoutPG/index.html#//apple_ref/doc/uid/TP40010853-CH7-SW1 Auto Layout Guide: Understanding Auto Layout developer.apple.com apple auto layout guide문서를 참고하여 작성하였습니다. AutoLayout이란? 뷰에 설정되어 있는 제약조건을 기반으로 동적으로 크기와 위치를 계산하는 것이다. 따라서 절대적 좌표가 아닌 상대적 좌표를 이용한 제약조건을 기반으로 다양한 크기의 디바이스에서 동일한 화면을 구성한다. 사용 이유 External Chan.. 2023. 3. 13.