안드로이드

안드로이드 TextView.setTextSize(int unit, int size) 사용법

알통몬_ 2019. 3. 14. 17:52
반응형


공감 및 댓글은 포스팅 하는데

 아주아주 큰 힘이 됩니다!!

포스팅 내용이 찾아주신 분들께 

도움이 되길 바라며

더 깔끔하고 좋은 포스팅을 

만들어 나가겠습니다^^

 


이번 포스팅에서는 제목 그대로

TextView.setTextSize(int unit, int size) 사용법

에 대해 알아봅니다.

xml에서 텍스트의 사이즈를 정할 때는 xxsp를 사용하는데요.


자바코드 또는 코틀린 코드로 동적으로 설정할 때는 

어떻게 해야할까요?

setTextSize(int size) 메소드가 있지만

얘는 기본적으로 단위가 px라서

sp를 적용하는 xml과는 단위가 달라

설정할 때 헷갈릴 수 가 있습니다.

또는 계산해서 넣어줘야하는 번거로움이 있죠.

TextView.setTextSize(int unit, int size) 를 사용하면

조금 더 쉽게 텍스트의 사이즈를 설정해 줄 수 있습니다.

int size에는 기존과 같이 양의 정수가 들어가면 됩니다.

그리고 int unit에는 무엇이 들어가냐 하면

Dimension 인터페이스에 있는 값들이 들어갑니다.

@Documented
@Retention(CLASS)
@Target({METHOD,PARAMETER,FIELD,LOCAL_VARIABLE,ANNOTATION_TYPE})
public @interface Dimension {
@DimensionUnit
int unit() default PX;

int DP = 0;
int PX = 1;
int SP = 2;
}


실제 사용은

nqeAskTxtView.setTextSize(Dimension.SP, 30);

이런 식으로 하면 됩니다.

이렇게 하면 30sp가 적용되겠죠?

DP나 PX도 사용가능합니다.

어렵지않죠? 이상입니다.

반응형