본문 바로가기
IT 개발/안드로이드개발

[안드로이드] px,dp,sp 크기단위 사용법 및 정리

by 만능이되고픈 잡캐 2018. 10. 2.

[안드로이드] px, dp, sp 등 크기단위 사용 및 정리


안드로이드 스튜디오를 사용하면서 레이아웃을 구성할 때 책만 살짝 훑어보고 유투브로 야매로 배운 터라 늘 생각없이 dp만을 사용해 왔다. 이번에 차이점이나 단위의 정확한 설명을 알고 사용하도록 하자.
아래의 표는 'Do it! 안드로이드 앱 프로그래밍'의 표를 보고 정리한 것이다.






단 위

단위 표현

설 명

px

픽셀

화면 픽셀의 수

dp 또는 dip

밀도 독립적 픽셀

(density independent pixel)

160dpi 화면을 기준으로 한 픽셀

sp 또는 sip

축척 독립적 픽셀

(scale independent pixel)

텍스트 크기를 지정할 때 사용하는 단위임. 가변 글꼴을 기준으로 한 픽셀로 dp와 유사하나 글꼴의 설정에 따라 1sp당 픽셀수가 달라짐.

in

인치

1인치로 된 물리적 길이

mm

밀리미터

1밀리미터로 된 물리적 길이

em

텍스트 크기

글꼴과 상관없이 동일한 텍스트 크기 표시




이제 대충 이해가 된 것 같다. 그래서 dp는 화면의 해상도를 구성할 때 많이 사용하였던 것이다.

dp를 사용하면 해상도에 따라 일일히 맞춰줄 필요없이 자기가 알아서 그 화면에 맞게 비율이 잡혔던 것이고, 

텍스트를 사용할 때도 dp를 사용하였지만, sp를 사용하면 글꼴을 기준으로 하여 픽셀수가 달라지기 때문에 좀 더 유용하다는 사실을 알았다.


in,mm,em,px은 사실상 거의 안쓰인다고 보면 될 것 같다. 

요즘 모바일 기기들은 해상도가 기기들마다 거의 다르기 때문에 그 해상도에 다 맞출 수 있기 어렵기에

dp와 sp를 지향하고, px을 지양하는 것이다.


레이아웃 설정 - dp

텍스트 설정 - dp, sp