dp (Density Independent Pixel)

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)를 사용해야 한다.