빙수왕의 개발일지

StackView distribution 속성 정리 본문

개발/iOS

StackView distribution 속성 정리

빙수킹 2021. 2. 23. 00:54

StackView의 distribution 속성은 크게 2가지 상황에 따라 다르게 적용된다.

StackView의 너비(axis가 vertical일 때는 높이)가 고정되어 있을 때와 아닐 때

 

* fill

- 고정: 안에 3개의 뷰가 있다면, 2개는 intrinsic size고 나머지 1개가 나머지공간을 다 채운다. (hugging priority로 그걸 판단함)

- 고정 아님: 내부 뷰들의 intrinsic size 사용. linear layout처럼

 

*fill equally

- 고정: 모든 뷰가 똑같이 나눠가진다.

- 고정 아님: 가장 큰놈의 intrinsic size에 맞춰서 모두 똑같아진다.

 

* fill proportionally

- 고정: 만약 3개 뷰의 intrinsic size 비율이 1:2:3이라면 남은 공백도 1:2:3으로 나눠가지게 된다.

- 고정 아님: fill과 동일한듯

 

* equal spacing

- 고정: intrinsic size대로 배치 후 남은 공간을 n빵한다. 만약 공간이 남지 않고 부족한 경우에는 Compressing Resistance 우선순위대로  축소시킨다.

- 고정 아님: fill과 동일한듯

 

* equal centering

- 고정: 내부 뷰들의 '센터'의 간격이 동일하게 해준다.