반응형
안드로이드 java 프로그램내에서 리소스 xml 에 dp 나 sp 로 정의되어 있는 사이즈 값을 가져올 때
getResources().getDimension(R.dimen.idname);
getResources().getDimensionPixelSize(R.dimen.idname);
둘 중 하나를 쓰는데 리턴되는 내용은 차이가 없고, 단지 getDimension() 은 float 형이고, getDimensionPixelSize() 는 int 형일 뿐임.
따라서 10dp 또는 10sp 로 정의되어 있는 리소스아이디를 xxhdpi 에서 불러오면 모두 30 이 리턴됨.
만약, textSize 를 프로그램에서 리소스 아이디로부터 불러와서 지정해주고 싶은 경우,
tvTest.textSize(TypedValue.COMPLEX_UNIT_PX, getResources().getDimension(R.dimen.idname));
와 같이 픽셀단위로 변환되었음을 명시해줘야 한다. 안 그러면 사이즈가 3배 커진 결과물을 보게 된다..
반응형
'개발 > 안드로이드' 카테고리의 다른 글
[Andorid] RecyclerView 최상단 위치하고 있는지 확인 (0) | 2016.07.25 |
---|---|
Android Design Support Library 사용하기 (0) | 2016.07.14 |
AsyncTask 병렬처리 (0) | 2016.07.04 |
Firebase Remote Config 소개 (0) | 2016.06.29 |
[에러]com.android.dex.DexIndexOverflowException (0) | 2016.06.24 |
댓글