DP (Density Independent Pixel)는 안드로이드에서 사용하는 단위로, 디스플레이의 밀도와 관련된 독립적인 픽셀 단위이다. 화면의 크기와 비율에 관계없이 일관된 크기로 보이도록 해주며, 다양한 디스플레이 밀도를 가진 디바이스에서도 같은 크기의 UI를 보여줄 수 있다.
안드로이드에서는 다양한 화면 크기와 해상도를 가진 디바이스가 있기 때문에, 하나의 UI 디자인이 모든 디바이스에서 동일한 크기로 보이는 것은 불가능하다. 이를 해결하기 위해 안드로이드는 DP라는 단위를 사용한다.
사용 예시
예를 들어, 두 개의 디바이스가 있다고 가정해보자. 첫 번째 디바이스는 해상도가 800 x 480이고 밀도가 240 dpi이며, 두 번째 디바이스는 해상도가 1280 x 720이고 밀도가 320 dpi이다. 이 때, 100 DP 크기의 UI 요소가 있다면, 두 디바이스 모두에서 동일한 크기로 표시된다.
Android Studio 내에서 XML 코드 예시
<Button
android:text="버튼"
android:layout_width="100dp"
android:layout_height="wrap_content" />
주의점
DP는 화면 밀도에 따라 크기가 결정되기 때문에, 화면 밀도가 다른 디바이스에서는 크기가 다를 수 있다. 따라서, 디바이스마다 크기를 다르게 해야하는 경우가 있다면, DP 대신 픽셀 단위(PX)를 사용해야 한다.