[iOS] Content Hugging Priority, Content Compression Resistance Priority

Martin Kim·2021년 9월 15일
0

iOS

목록 보기
9/11

Autolayout Priority

  • Content Hugging Priority와 Content Compression Resistance Priority는 iOS의 Autolayout Priority들이다.
  • 다음 이미지를 보자

Intrinsic Content Size (고유 콘텐츠 크기)

  • 뷰의 자체 콘텐츠 크기를 말한다. 예를 들어 width, height값.
  • 레이블의 고유 콘텐츠 크기는 레이블의 텍스트의 크기고, 이미지의 고유 콘텐츠 크기는 이미지 자체의 크기이다.

Constraints Priority (제약 우선도)

  • 오토레이아웃을 이용해서 콘텐츠의 크기를 제한할 때 Intrinsic Content Size를 제약을 사용해서 나타낸다. 우선도가 높으면 다른 제약보다 우선적으로 적용되고, 혹시 다른 제약과 함께하는 경우 우선도가 낮으면 무시된다.
  • Content hugging Priority와 Content resistence

Content hugging priority

  • Intrinsic Content Size보다 커지지 않도록 제한하는 우선도.
  • 최대크기에 대한 제한도
  • 이 수치가 높을수록 해당 뷰가 커지지 않도록 한다.
    즉 주어진 크기보다 작아질 수 있음

Content compression resistance priority

  • Intrinsic Content Size보다 작아지지 않도록 제한하는 우선도.
  • 최소 크기에 대한 제한도
  • 이 수치가 높을수록 해당 뷰가 작아지지 않도록 한다. 즉 주어진 크기보다 커질 수 있음

예시

  • 위 같은 경우가 있다고 하자, 배우라는 라벨은 내용이 엄청나게 늘어날 수 있다. 그러면 출연이라는 글자가 전체 width로 인해 줄어들 수 있는데 이를 방지하려면 어떻게 해야할까?
  • 정답은 출연 레이블의 Content compression resistance priority를 배우 레이블보다 높게 설정하면 된다. 수치가 높을 수록 해당 뷰가 작아지지 않을테니 말이다.

출처: 네이버 부스트코스 iOS 앱 프로그래밍,

profile
학생입니다

0개의 댓글