반응형

마감기한은 다가오는데 작업속도가 생각보다 따라주지 않아서 너무 답답했다. 하다 보니 사진도 괜찮은 거 넣고 싶고 레퍼런스로 할 만한 것들을 찾는데 시간을 보낸 이유도 있지만, 오토레이아웃이 아직 능숙지 않아서 버벅거리는데 딜레이가 많이 되었다. 아우.. 정말.. 이 오토레이아웃 녀석은 언제쯤 자유롭게 가지고 놀 수 있을까. 정말 강력한 기능이고, 또 강력하게 나를 좌절시키는 오토레이아웃.. 내일은 꼭 어떻게든 완수해서 제출하는 것이 목표다. 너무 피곤하다. 일단 자자.

반응형
반응형

 

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

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

 

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

‘컨스트레인트 Contraint’

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

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

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

 

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

 

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

 


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

 

프레임 리사이징

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


★ 리사이징의 개념 ★ 

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

오토레이아웃 개념 원리


오토레이아웃은 진짜...
잘 모르는 상태에서 오토레이아웃 된 작업물을 접할 때 정말 혼란스럽다..


아무리 유튜브 또는 블로그를 찾아 공부한다고 해도 모르는 부분이 항상 있기 마련.
다시 정리해보는 시간을 가져본다.
원리를 이해하면 피그마 작업효율이 두 배 올라간다!

오토레이아웃 : 컨텐츠에 따라 자유롭게 변형되는 프레임
(피그마는 크기에 따라 사이즈가 유연하게 늘어나는 리사이징 기능을 제공한다.)
  • 오토레이아웃의 목적 : 반응형 대응 디자인
  • 버튼을 오토레이아웃으로 만들 때, 백그라운드 없이 '텍스트' 만을 가지고 오토레이아웃을 한다. 그러면 텍스트에 '프레임이 씌어져서' 백그라운드가 되어주기 때문에 필요 없음.


오토레이아웃 꿀팁 : 블록을 조합하듯 만들기, 요소를 덩어리 단위로 쪼개서 보고 가장 작은 단위부터 만들기

 

 

오토레이아웃 리사이징 (컨텐츠과 컨테이너는 상대적인 관계)

오토레이아웃 프레임에서 기준보다 바깥에 있으면 컨테이너, 안에 있으면 콘텐츠라고 본다면..
오토레이아웃 프레임 생성 시, 상위 프레임 사이즈가 조정될 때, 콘텐츠와 컨테이너가 어떻게 반응해야할지 설정하는 속성
  • |ㅡ| Fixed width (모든 경우에 뜸)
  • > < Hug (안에 컨텐츠가 있어야 만 뜸- 아래 예시 : 파란색, 베이지 박스에만 뜸)
  • < > Fill container (밖에 컨테이너가 있어야 만 뜸)

오토레이아웃 리사이징 속성
1. Hug content : hug(감싸안다) + content(콘텐츠) :컨테이너가 콘텐츠를 감싸안는 속성임으로 안에 콘텐츠가 있어야 뜬다.
컨테이너에 hug contents를 적용하고 콘텐츠 상자를 늘리면 늘어나는 콘텐츠 상자 크기에 맞게 컨테이너가 감싸줌.
2. Fill container : Fill(채우다) + container(컨테이너) : 콘텐츠가 컨테이너를 채우는 속성, 즉 바깥에 컨테이너가 있어야만 뜬다.
콘텐츠에 fill container를 적용하고 컨테이너 상자를 늘리면... 그에 맞게 안의 콘텐츠가 컨테이너 상자를 채워줌.
3. Fixed Size : Fixed(고정하다) + Size(크기) : 컨테이너와 콘텐츠 모두 고정된 상태, 즉 고정임으로 상대적 개념이 아닌 모든 경우에 뜬다. (고정되어 늘려도 안변함)

 

반응형

+ Recent posts