안드로이드 디바이스의 경우 크게 3가지의 해상도 범주를 가지고 있는데,
LDPI(저해상도), MDPI(중해상도), HDPI(고해상도)입니다.

Density값은 LDPI가 120, MDPI가 160, HDPI가 240입니다. (각각 인치당 픽셀수를 이야기합니다.)
아래 표 (Table.1)를 참고하시면 결국 현재 디자인 하신 그림 파일의 기준은 HDPI를 기준으로 되어있는 것이고,
LDPI를 위해서는 당연히 120/240 = 1/2, 
MDPI를 위해서는 당연히 160/240 = 3/4로 길이당 픽셀수가 감소하는 셈입니다.

모든 해상도를 지원하시려면 하나의 그림 파일을 HDPI, MDPI, LDPI에 맞춰서 3개로 만들어서 개발자에게 넘기시면 됩니다.

Table 1. Screen sizes and densities of emulator skins included in the Android SDK.


Low density (120), ldpi Medium density (160), mdpi High density (240), hdpi
Small screen QVGA (240x320)

Normal screen WQVGA400 (240x400)
WQVGA432 (240x432)
HVGA (320x480) WVGA800 (480x800)
WVGA854 (480x854)
Large screen
WVGA800* (480x800)
WVGA854* (480x854)

* To emulate this configuration, specify a custom density of 160 when creating an AVD that uses a WVGA800 or WVGA854 skin.

레이아웃용 xml 파일에 기술되어야 할 dip값은 다음과 같이 계산해서 넣으시면 됩니다.

dip = px * (160/density)

density값은 HDPI, MDPI, LDPI의 값들입니다. 
결국 MDPI일때는 dip값은 px값과 같다는 것이지요.

모바일에서 px은 멀티 스크린을 지원할때 문제가 되기 때문에 지양한다.

그래서 여러 해상도의 화면에 맞추기 위해 모바일에서는 dip를 사용하고 있다.

안드로이드 치수
     px: pixel 10px는 정확히 10픽셀. 스크린 픽셀의 실제 크기와 밀도와 상관없다
           QVGA (320x240)에서 10px는 높이의 1/24를 차지. VGA(640x480)은 10px는 1/64를 차지.
     dip, dp: device-independent pixel. 실제 픽셀 크기와 밀도에 따른 변활르 막기 위한 단위.
          이는 dip dot independent pixel이라고도 부른다. 안드로이드는 160dpi 화면에 나타나는 것과
          똑같은 크기로 그 개체의 크기를 확대/축소 할 수 있다.
          예로 해상도가 640x480, 크기 4x3인치라면 픽셀 밀도는 160dpi므로 10dp 객체는 10px 그대로 보인다.
          그러나 640x480이고 8x6화면은 밀도가 80dpi므로 10dp 개체가 10px짜리 객체보다 두배크다.
          안드로이드가 dp를 확대하거나 축소하는 스케일은 정확친 않고 대략 맞출 뿐이다.
      sp: sclaed pixcel. dp와 비슷, 문자열과 같이 밀도 스케이이 정확해야 하는 개체의 크기를 정할 때 사용
      pts: points.텍스트 에디터 처럼 문자의 크기를 포인트로 정할 때 사용 포인트는 1포인트 1/72인치.
      in: inches
      mm: millimeters

240 Density 기준으로 디자인을 할때 다음과 같이 간단히 dp값을 알 수 있습니다.

dp = px / 3 * 2
dp = px * 0.66

1. 우리는 240 Density의 480x800 해상도를 가지고 있는 갤럭시S를 대상으로 개발/디자인 한다.
2. 모든 개발에서 사용하는 단위는 dp와 sp로만 이루어진다. (단, 이미지는 px사용)
3. 디자이너는 모든 px사이즈의 표기에 대하여 나누기 3 곱하기 2를 한 후 dp라는 단위를 사용한다.
4. 디자이너는 사용 폰트 크기에 대하여 위에 나와있는 sp 테이블 이미지를 참고하여 사용한다.
5. 디자이너는 모든 제작된 이미지들의 크기를 480x800 대상으로 제작하되 특별한 계산은 하지 않는다.
6. 개발자는 Resource Identifier중 drawable-hdpi만을 사용한다. (개인적으로 아이콘은 mdpi도 만들길 추천함)

참고URL: http://hest.tistory.com/111

관련블로그: http://gtko.springnote.com/pages/5725475

관련블로그: http://blog.naver.com/monster7575?Redirect=Log&logNo=100113840411

참고사이트: http://developer.android.com/guide/practices/screens_support.html

+ Recent posts