[AutoLayout]
공식문서 바로가기
AutoLayout tools
- Stack
- Align
- Pin
- Resolve Issue
1) Stack
Stack Option
- Axis : 수직, 수평을 정하는 옵션
- Alignment : StackView안에 view들의 Y축을 정렬하는 옵션
- Distribution : StackView안에 view들의 X축을 정렬하는 옵션
- Spacing : subview들 간의 간격을 설정하는 옵션
2) Align
Align
정렬에 관한 Contraint
Align 설정 방법
Add New Alignment Contraints 에서 설정한다.
Horizontally in Container를 체크하면 아래처럼 Horizon에서 center로 오게 된다.
Vertically in Container를 선택하면 Vertical에서 center로 오게 된다.
3) Pin
Pin
객체 간 상대적 거리 및 크기에 관한 Contraint
Pin 설정 방법
Add New Contraints 에서 설정한다.
가장 위의 항목에서는 다른 객체와의 거리를 지정할 수 있다.
위에서 두번째 항목에서는 객체의 크기를 지정할 수 있다.
예를 들어 아래의 Contraint로 button 객체를 Label 객체와 30만큼 떨어진 아래에 위치시킬 수 있다.
4) Resolve Issue
Resolve Issue
AutoLayout 관련 문제 해결
Resolve Issue 설정 방법
Resolve Auto Layout Issues에서 설정할 수 있다.
AutoLayout Attributes
- Leading : 상대 뷰와의 왼쪽 면과의 간격
- Trailing : 상대 뷰와의 오른쪽 면과의 간격
- Top : 상대 뷰와의 위쪽 면과의 간격
- Bottom : 상대 뷰와의 아래쪽 면과의 간격
Priority
번역하자면 "우선순위"이다. object가 2개이상일 때 사용된다. priority는 1부터 1000까지 지정될 수 있다.
Hugging Priority
Priority가 크면 크기 유지, 작으면 크기가 늘어난다.
Compression Resistance Priority
Priority가 크면 크기 유지, 작으면 크기가 줄어든다.
Intrinsic Content Size
Intrinsic Content Size
직역하면 본질적인 컨텐츠의 크기이다.
CHCR
[참고]
[iOS] 오토레이아웃(AutoLayout)과 Layout 개념 - jinShine
AutoLayout Autolayout의 개념들에 관해 알아 보겠습니다. AutoLayout은 뷰에 주어진 제약조건에 따라 뷰의 크기와 위치를 동적으로 계산해 배치하느것으로, 외부 또는 내부의 변화에 동적으로 반응하여
jinshine.github.io
https://donggoolosori.github.io/2020/12/06/ios-align/
[iOS] Alignment Constraints - Swift - DGOS | 동꿀오소리
지난 포스팅에서 Pinning Constraints에 대해 알아봤습니다. 하지만 Auto Layout을 위해서는 Pinning Constraint 만으로는 충분하지 않습니다. Pinning Constraint의 문제점 버튼을 화면 중앙에 위치시키는 것을 생
donggoolosori.github.io