[iOS/Swift] Content Hugging Priority & Content Compression Resistance priority

민니·2022년 7월 5일
0

iOS

목록 보기
8/22

Content Hugging priority ❓

  • 컨텐츠 고유 사이즈보다 늘어날 때 저항하는 제약(둘 중 하나는 사이즈가 커져야 할 때 사용)
  • 우선 순위가 높으면 자신의 사이즈 유지
  • 우선 순위가 낮으면 사이즈가 커짐

📚 Example

  1. UIView를 삽입하고 background를 채운다. 2개의 label의 오토레이아웃을 설정해 준다.


  1. 두 label 사이를 30으로 지정할 시 hugging priority를 설정하라는 오류가 뜸을 알 수 있다. (둘 중 하나의 사이즈는 무조건 커져야 한다.)


  1. 두 번째 label의 크기를 유지하기 위해, 첫 번째 label의 vertical hugging priority를 낮춰 보자.

📚 두 번째 label의 크기는 유지되고, 첫 번째 label의 크기가 늘어남을 알 수 있다.


  1. 다시 전으로 돌아가, 첫 번째 label의 크기를 유지해 보기 위해 두 번째 label의 vertical hugging priority를 낮춰 보자.

📚 첫 번째 label의 크기는 유지되고, 두 번째 label의 크기가 늘어남을 알 수 있다.




Content Compression Resistance priority ❓

  • 컨텐츠가 고유 사이즈보다 줄어들 때 저항하는 제약(둘 중 하나는 사이즈가 줄어들어야 하는 상황에 사용)
  • 우선 순위가 높으면 자신의 사이즈 유지
  • 우선 순위가 낮으면 사이즈가 줄어듦

📚 Example

  1. 첫 번째 label에 엄청 긴 무언가(?)를 아무거나 입력했다.


    📚 compression resistance priority를 set하라는 오류가 뜬다. )두 label 중 하나는 작아져야 한다)

  1. 두 번째 label의 크기를 유지하기 위해, 첫 번째 label의 compression resistence 우선 순위를 낮춰보자.

📚 두 번째 label의 크기는 유지되고, 첫 번째 label의 크기가 줄어듦을 알 수 있다.


  1. 다시 전으로 돌아가서, 첫 번째 label의 크기를 유지하기 위해, 두 번째 label의 compression resistence 우선 순위를 낮춰보자.

📚 첫 번째 label의 크기는 유지되고, 두 번째 label의 크기가 줄어듦을 알 수 있다.





마무리

엄청 헷갈렸던 건데... 드디어 정리했다! 😄

0개의 댓글