1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
public int dpToPx(float dp) {
    int px = (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, dp, getResources().getDisplayMetrics());
    return px;
}
 
public float pxToDp(float px) {
    // 해상도 마다 다른 density 를 반환. xxxhdpi는 density = 4
    float density = getResources().getDisplayMetrics().density;
    if (density == 1.0)      // mpdi  (160dpi) -- xxxhdpi (density = 4)기준으로 density 값을 재설정 한다
        density *= 4.0;
    else if (density == 1.5// hdpi  (240dpi)
        density *= (8 / 3);
    else if (density == 2.0// xhdpi (320dpi)
        density *= 2.0;
    return px / density;     // dp 값 반환
}
cs

+ Recent posts