티스토리 뷰

안녕하세요 밀쿄입니다,

오늘은 translatesAutoresizingMaskIntoConstraints에 대해서 알아보겠습니다.

먼저 애플문서를 보기전에 이름에서 추측해봅시다.

translates AutoresizingMask Into Constraints로 쪼개볼 수 있네요.

다시 말하면 AutoresizingMask를 Constraints로 번환한다? 이정도쯤 상상할 수 있겠습니다.

그럼 애플 문서를 보겠습니다, ( 애플문서는 늘 그렇듯 여기 입니다. )

View의 AutoresizingMask가  AutoLayout Constraints으로 변환되는지의 Bool값 이라고 되어 있네요.

저희 상상이 대강 맞았습니다.

 

그럼 대체 Autoresizing Mask가 무엇이냐가 중요하겠네요.

그럼 그 놈에 대한 애플 문서를 보겠습니다 ( 애플 문서는 여기 입니다. )

슈퍼뷰의 bounds가 변경될 때, 리시버의 size를 조정하는 방법을 결정하는 Integer Bit Mask..라고 되어있습니다.

참고로 타입은 UIView.AutoresizingMask이고 이 놈은 구조체입니다.

도통 알 수 없는 말만 가득하네요.

 

사실 이렇게 문서만 쫓아가다보면 머리가 아픕니다.

실제로 이쯤 적다보니 저도 멘붕이 옵니다.

사실 이 놈은 우리가 스쳐지나가면서 봤을겁니다.

다들 한 번쯤 보신 기억이 나나요??

 

Constraints 및 Autoresizing를 아무것도 적용하지 않았을 때 일어나는 현상입니다.

그럼 Autoresizing를 한 번 적용해보겠습니다.

이렇게 변해갑니다.

Constraints가 없어도 쭉죽 잘만 늘어가네요. 제 키도 저렇게 늘었으ㅁ...

그럼 다시 translatesAutoresizingMaskIntoConstraints로 돌아가보겠습니다.

저 위에 있는 애플 문서에서 핵심적인 거만 번역해보면

이 bool값이 true면 AutoresizingMask로 Constraints 집합을 만들고 뷰의 위치와 크기를 완전히 지정

즉, 이 값을 false로 만들지 않고서는 Constraint를 추가할 수 없으며

false로 만들었을 경우에는 모호하지 않고 충돌하지 않는 Constraints 집합을 제공을 해야한다,

또한 Interface Builder로 만들면 기본적으로 false고 programmatically로 만들면 true라고 합니다.

 

결론은 코드로 화면을 짤 때에는

translatesAutoresizingMaskIntoConstraints를 false로 설정해줘야한다.

그렇지 않으면 충돌한다,

(제가 작성하는 AutoLayout 관련 모든 글이 코드로 화면 짜기 위한 빌드업입니다)

 

그리고 제 블로그글 보다 더 상세하게 설명되어 있는 글이 있습니다.

저도 참고하고 작성했는데...사실 거의 같은 글이 되어버렸습니다.

https://zeddios.tistory.com/474

 

iOS ) translatesAutoresizingMaskIntoConstraints

안녕하세요 :) Zedd입니다. 오늘은...! translatesAutoresizingMaskIntoConstraints..!을 정확히 알아보는 공부~.~ translatesAutoresizingMaskIntoConstraints 사실 엄청 많이 보셨을 코드에요. self.view.transl..

zeddios.tistory.com

 

'Swift&IOS' 카테고리의 다른 글

rethrows  (0) 2020.01.09
StackView + ScrollView  (0) 2020.01.02
[AutoLayout] leading, trailing, left, right  (0) 2019.12.26
날짜 비교하기  (0) 2019.12.24
[AutoLayout] FirstBaseLineAnchor & LastBaseLineAnchor  (0) 2019.12.22
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
글 보관함