스닥
Playground
스닥
전체 방문자
오늘
어제
  • 분류 전체보기 (125)
    • 개발자 기본기 (1)
    • Swift 아키텍처 (6)
    • iOS 개발 (55)
      • Swift (12)
      • UIKit (17)
      • SwiftUI (9)
      • CoreData (9)
      • MusicKit (4)
      • WebKit (2)
      • 개발 환경 (0)
      • WatchOS (2)
    • 애플 개발자 아카데미 (4)
    • 막 쓰는 개발일지 (0)
    • 운영체제 (4)
    • 네트워크, 서버 (16)
      • Network (9)
      • Server (7)
    • 알고리즘 (8)
    • C언어 (7)
      • 함수 (7)
    • 하루 이야기 (23)

블로그 메뉴

  • GitHub계정
  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • docker
  • Server
  • Core Animation
  • swift performance
  • 깊이 우선
  • 알고리즘
  • 문자열 복사
  • C 언어
  • dfs
  • 너비 우선
  • ios rendering
  • 자료구조
  • core data
  • SWIFT
  • BFS
  • ip주소
  • struct class 성능
  • 서버
  • 트리
  • 도커

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
스닥
iOS 개발/UIKit

[Auto Layout] Equal Constraints에 대해서

[Auto Layout] Equal Constraints에 대해서
iOS 개발/UIKit

[Auto Layout] Equal Constraints에 대해서

2021. 12. 20. 20:38

 

 

코드로 하면 더 깔끔하지만, 공부하는 입장에서는 눈으로 보면서 하면 더 빠르게 이해가 가능하기 때문에 스토리보드를 사용해서 설명하였다.

 

복습하는 중에 혹시 놓칠만한 것들만 골라서 정리했으니,

auto layout을 한번이라도 써본 사람이라면 끄덕 끄덕 하면서 빠르게 읽고 넘어가면 된다...ㅎㅎ

 

 

Equal Constraints

 

Constraints는 "길이, 간격"으로 이해하면 된다.

Top Constraints를 10을 줬다는 것은, Top부터 10 간격만큼 떨어진 곳에 view를 배치했다는 뜻이다.

 

 

아래 왼쪽의 그림처럼 3개의 View가 있다고 가정하자.

우리는 저 View들의 간격과 높이를 일정하게 맞추어서 오른쪽 그림처럼 만들고 싶다.

 

 

 

 

엥 너무 쉬운거 아니야?

 

먼저 모두들 View들의 상하좌우 Constraints를 이런식으로 설정할 것이다.

 

 

 

 

이렇게 하면 모든 view들이 각각 20만큼 떨어져있게 되고, 좌우 간격이 0이 되어서 우리가 원하는 모양이 만들어질 것이라고 생각할 것이다.

 

하지만, storyBoard는 Auto Layout Error을 내뱉는다.

 

 

 

 

 

우리가 각각의 cell들의 Height를 알려주지 않았기 때문이다.

 

 

우리의 아이폰 화면이 400의 Height를 가진다고 가졍하면, 우리가 정해준 80(20 * 4)pt의 간격을 제외한 320을 어떻게 나눠줘야 할지, 스토리보드는 알지 못한다.

 

 

 

 

스토리보드 무죄!!

 

 

 

 

그렇다면 어떻게 알려줄 수 있을까?? 

 

 

우리가 늘 하듯이 height Constraints를 설정해줘 버리면, 당연히 문제가 생긴다.

 

화면의 크기가 기기마다 다르기 때문에, 400의 height를 가정하고 height constraints를 주면, 다른 크기에서는 우리가 원하는 모습이 나오지 않을 것이다.

 

 

 

 

답은 간단하다.

 

 

저 3개의 View를 설정하고, Equal Heights를 체크해주면 된다.

 

 

 

그러면 아까 남은 320의 길이를 자동으로 3개의 View가 "똑같이" 나눠가지게 되기 때문에, 우리가 원하는 모양이 만들어지는 것이다.

 

 

'iOS 개발 > UIKit' 카테고리의 다른 글

[Auto Layout] Multiplier(2)  (0) 2021.12.22
[Auto Layout] Multiplier(1)  (0) 2021.12.21
[UIGestureRecognizer] tableview와 함께 사용하기  (0) 2021.11.29
[UITableView] SwipeAction - cell 삭제 (확인 Alert와 함께)  (0) 2021.11.29
[UITextView] 줄 수, 글자 수 제한  (0) 2021.11.22
[UIView] 정말 예쁜 blur Effect  (0) 2021.11.21
[Swift] App 첫 로딩을 감지하는 법 (first loading detection)  (0) 2021.11.20
[Swift] 앱 안에서 메일 보내기  (0) 2021.11.20
  • Equal Constraints
스닥
스닥
https://github.com/feldblume5263

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.