Ответ
dp (density-independent pixel) — единица измерения в Android, позволяющая создавать интерфейсы, которые масштабируются на экранах с разной плотностью пикселей. 1 dp примерно равен 1 физическому пикселю на экране с плотностью 160 dpi (базовая плотность).
Например, для экрана с плотностью 320 dpi (xxhdpi) 1 dp = 2 пикселя.
Использование dp вместо px помогает сохранять пропорции элементов на разных устройствах.
Пример в XML:
<Button
android:layout_width="100dp"
android:layout_height="50dp" />
Конвертация в код Kotlin:
val widthInPx = TypedValue.applyDimension(
TypedValue.COMPLEX_UNIT_DIP,
100f,
resources.displayMetrics
)