Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- Info.plist
- uikit
- API
- prefix()
- GIT
- joined()
- Segue
- tableView
- 클론코딩
- alamofire
- github
- reduce()
- IOS
- String()
- MVC
- 코드업 파이썬 기초 100제
- xib
- 프로그래머스
- uisearchbar
- 알고리즘
- 대문자소문자
- Autolayout
- components()
- 코딩테스트
- zip()
- 라이징캠프
- replacesubrange()
- suffix()
- swift
- 싱글톤
Archives
- Today
- Total
Daeng iOS
[iOS] AutoLayout 정리 본문
Autolayout은 뷰에 주어진 제약조건에 따라 뷰의 크기와 위치를 동적으로 게산해 배치하는 것으로, 외부 또는 내부의 변화에 동적으로 반응하여 유저 인터페이스를 구성한다
개발자는 y = ax + b 조건(constraints)을 준다.
→ 절대값으로 x/y축의 위치/크기를 결정해 주는 대신, 조건을 설정해서 오토레이아웃 엔진이 알아서 값을 계산하게 한다.
x, y는 서로 다른 뷰의 속성을 나타낸다
a, b 는 개발자가 지정하는 임의의 수이다
- 목적: 모든 뷰에 대해 4개의 값을 알아내는 것
- 뷰의 x축 위치
- 뷰의 y축 위치
- 뷰의 x축 크기(너비)
- 뷰의 y축 크기(높이)
- 뷰의 속성 : 조건(Constraints)는 뷰의 속성(attributes)간 관계를 설정한다
- 위치 속성→ 뷰 직사각형의 상하좌우 테두리를 의미, leading은 text가 시작하는 부분(보통 왼쪽)→ 가로, 세로 중심 축
- [center x / center y]
- [top / bottom / leading / trailing]
- 크기 속성→ top 과 bottom 사이의 높이, leading과 trailing 사이의 너비를 의미
- [height, width]
- 위치 속성→ 뷰 직사각형의 상하좌우 테두리를 의미, leading은 text가 시작하는 부분(보통 왼쪽)→ 가로, 세로 중심 축
‘속성’을 정해줬다고 해서 오토레이아웃 엔진이 원하는 4가지 값이 항상 충족 되는 것은 아니고 주어진 속성을 가지고 크기와 위치를 모두 알아낼 수 있어야 한다
X축 기준으로 Leading, Trailing, Width, Center X 이렇게 4가지 속성이 있다.
이 중 2개가 정해져야 한다. (Y축도 동일하다.)
- 테두리 속성 1개 (Leading or Trailing) + 테두리 속성 1개 (Leading or Trailing)
- 테두리 속성 1개 (Leading or Trailing) + 너비 속성 (Width)
- 테두리 속성 1개 (Leading or Trailing) + 중심축 속성 (Center X)
- 너비 속성 (Width) + 중심축 속성 (Center X)
- 안전 영역(Safe Area)이란?
안전 영역(Safe Area) 은 어플리케이션이 상태바, 네비게이션바, 툴바, 탭바를 가리는 것을 방지하는 영역입니다. 표준 시스템이 제공하는 뷰들은 모두 안전 영역을 준수하고 있습니다.
포인트를 정리하자면!!
오토레이아웃이란?
- 다양한 화면에 대응할 수 있도록 UI레이아웃을 잡아주는 도구이다
- 방정식으로 값을 정한다
- 드래그앤 드랍, 사이즈 인스펙터 등으로 설정이 가능하다
'IOS > 기타' 카테고리의 다른 글
[iOS] Xcode의 info.plist / AppProject 속성 정리 (0) | 2022.10.18 |
---|