Android(Kotlin)

기기 자체 설정의 글씨 크기에 대응하는 레이아웃 짜기 - textView

E.I.T.U 2021. 6. 13. 00:08

앱 제작을 하면서 나름 열심히 검수했다고 생각했다

AVD로는 Pixel3, 실기기로는 Galaxy Note9를 사용하여

나름대로 레이아웃 구성을 잘 했다고 생각했다

 

기대에 부푼 마음에 엄마께 사용해보시라고 설치해드렸는데

이게 왠일? 레이아웃이 전체적으로 다 망가져있었다

알고 보니 핸드폰 자체 설정에서 글씨 크기를 크게 해 두시고 쓰시던 중이라

작은 글씨 크기에만 맞춘 내 앱은 당연히 레이아웃이 엉망진창이 된 것이었다.

 

그때부터 다른 유명 앱들을 보니 보이더라

텍스트는 한 줄에 하나씩, 각 레이아웃별로 충분히 떨어진 거리

다 글씨 크기나 화면 크기 조절에 대응할 수 있도록 만들어진 것이었다.

 

일단 처음으로 한건 텍스트뷰를 고치는 것이었다.

알고 보니 텍스트뷰에는 이미 충분히 좋은 기능이 있더라

바로 android:maxLines와 android:autoSizeTextType 이 두 가지 기능이었다

 

먼저 maxLines는 정수 값을 넣는데 1이면 최대 한 줄 2면 최대 두줄 등

글씨 크기가 커지거나 내용이 길어져도 지정한 줄 이상으로 넘어가지 않는다

 

그리고 autoSizeTextType엔 uniform 값을 넣는데

maxLines에서 정한 줄 이상으로 넘어가지 않도록 자동으로 텍스트 사이즈를 조절해준다

근데 이 속성은 잘 써야 하는 게 원하지 않게 텍스트가 커질 수도 있다