나의 플랫폼/iOS

[iOS] Use UILabel in UIScrollView with Autolayout

GsBOB 2017. 7. 20. 10:51

UILabel 에 표시할 텍스트 값이 길어질 경우, Scroll을 이용하기도 한다.

이럴 경우 UITextView를 이용하면 쉽게 제어가 가능하다.


하지만, UITextView를 사용할 경우 텍스트 세로 정렬이 힘들다.

기본적으로 Scroll이 할당되어 있어서 그런 듯 하다.


만약, 텍스트가 짧을 경우는 가운데에 표시 하고

텍스트가 길어질 경우 스크롤로 보여주고 싶을 경우는 어떻게 하는게 편할까??


여러 테스트를 해본 결과, 전 UILabel을 UIScrollView로 감싸는 형태로 했다.


아래가 설정이 가장 중요하다!


1. ScrollView와 Label Bottom을 일치 시킨다. (완전히 일치 시킬 필요는 없ㄷ가.)

2. ScrollView와 Label의 Height를 '>=' 로 설정 한다.



혹시 필요하실 것 같아서 ScrollView 설정을 공유 했습니다.

그저 SuperView와 크기를 맞추는게 다 입니다.


UILabel의 설정은 아래와 같습니다.

Alignment는 중간으로 뒀습니다.

그리고 Height를 증가 시키기 위해 Lines 를 0으로 설정 하였습니다.




참고하세요.