반응형

 

피그마의 핵심 ‘오토레이아웃’

오토레이아웃 설명에 앞서 왜 이 기능이 필요한지 설명해주셔서 좋았다.
그동안 나는 오토레이아웃 기능 자체에만 매몰되어서 어떻게 이걸 잘 쓸 수 있는지만 고민했는데
어떤 쓰임으로 활용하는지에 대한 개념을 염두해 두고 오토레이아웃 사용하는 방법을 배우니 이해하기가 한결 수월해졌다.
 
  • 개체를 패딩으로 감싸 컨테이너(여백)로 만들 때 쓰는 ‘오토레이아웃'
  • 오토레이아웃에서는 일반적인 레이어의 앞 뒤 순서가 반대다.
  • 하나의 컨테이너 (모든 코드 블록) = 개체의 크기 + 패딩(내부여백 값).
  • 컨테이너를 쌓기 위해 필요한 오토레이아웃!

 

(컨테이너를 아래로 쌓아 내려감 → 코드 블록이 쌓임
오토레이아웃은 컨테이너를 간격에 맞게 규칙적으로 정렬해주는 기능을 수행한다.
컨테이너를 여러게 쌓을 때, 얼마 만큼의 간격으로 몇 개를 쌓을 건지 오토레이아웃으로 편하게 만들 수 있음.
 
잊지말아요 :
(콘텐츠를 패딩으로 감싸 컨테이너를 만들어 주는 오토레이아웃)
 
 

‘컨스트레인트 Contraint’

오토레이아웃을 오토레이이아웃답게 만들어주는 기능인 컨스트레인트!

이 기능을 알아야 오토레이아웃을 제대로 쓴다.

실무에서 많이 사용하는 피그마 기능이고, 또 활용하기 따라 정말 다양한 움직임을 연출해 낼 수 있기 때문에 반드시 알아야 한다.

 

오토레이아웃은 그 자체로도 이미 레이아웃을 자동으로 쌓을 수 있다.
하지만 반응형 웹사이트 처럼 실시간으로 같이 움직이는 레이아웃을 만들기 위해서는 오토레이아웃의 ‘규칙’을 만들어 줘야한다.
 
Contraint : 제약, 제한 (=Anchor) → 오토레이아웃 안에 있는 개체들이 움직이는 모양을 제한한다.

 

★ 부모 컨테이너의 크기가 변할 때, 자식 컨테이너는 어디를 기준으로 변할지 정할 수 있다.

 


'부모 컨테이너가 변할 때 자식 컨테이너는 부모의 왼쪽과 위를 기준으로 움직인다.'를 하늘색 점선이 보여주고 있음. 그래서 Contraint를 Anchor라고도 함. 이 상태에서 오른쪽 패널을 보면 Contraits 설정이 파란색 점선 모양대로 되어있음.

 

프레임 리사이징

오토레이아웃 & 컨스트레인트를 제대로 다루려면 리사이징을 이해해야만 한다.


★ 리사이징의 개념 ★ 

  • 프레임은 기본적으로 크기가 고정. Fixed.
  • 오토레이아웃으로 프레임을 감싸는 그 순간! Fixed외 다른 사이즈값이 생긴다 → 리사이징  ✅
  • 부모의 사이즈 값에 따라 자식의 사이즈 값이 영향을 받는다.
  • 자식의 사이즈 값에 따라 부모의 사이즈 값도 영향을 받는다.
설명 유형
Fixed 고정값 공통
Hug 자식 컨테이너의 크기에 맞춰 조정 부모만 쓸 수 있음
Fill 부모 컨테이너의 크기에 맞춰 조정 자식만 쓸 수 있음
  • 자식이 Fixed면 부모가 Hug 감쌀 수 있다.
  • 자식이 부모에 맞게 늘어나야한다면, 부모가 고정값Fixed으로 설정되어 있어야 한다.
  • 부모가 고정되어 fixed 되어 있지 않으면 자식이 Fill로 되어 있을 때 계속 쫒아다닌다.
  • 반대로 부모가 자식을 Hug 감싸기로 했다면 자식은 Fixed 고정됭 있어야 한다.
  • 부모와 자식이 둘 다 fixed 일수도 있다. 
실제 만드는 웹사이트나 앱에는 수많은 컨테이너들이 있다. 그렇기 때문에 리사이징에 꼼꼼하게 신경을 쓰지 않으면 복잡한 움직임이 있을 때 내가 의도하지 않았던 레이아웃이 생길 수 있다.
→ 여러개의 컨테이너가 쌓였을 때는 리사이징을 반드시 잘 조정해야한다.
반응형

+ Recent posts