마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

이미지 dp 계산법 질문이 있습니다~

0 추천

제가 지금 하고있는 프로젝트는 1280 x 720(갤럭시3) , 800 x 480 (갤럭시2) 두 해상도를 기준으로 만들기 시작했습니다

이미지는 1280x720 기준으로 만들어서 받았고 drawable-xhdpi 폴더에 이미지를 추가해서 작업하고있습니다
 
hdpi기준 이미지는 받지 않았기때문에 dp 계산을 해서 보여주어야 하는데 검색해보니 
dp = px * (160/density) 이라고 나옵니다 그리고 기기마다 density가 달라서 갤3는 320dpi , 갤2는 240dpi입니다
 
갤럭시3 xhdpi의 경우 640dp x 360dp 가 전체크기입니다
1280*(160/320) => 640dp
720*(160/320) => 360dp
 
갤럭시s2 hdpi의 경우 533dp x 320dp 전체 크기가 되는거같습니다
800*(160/240) =>533.33dp 
480*(160/240) =>320dp 
 
 
제가 궁금한점은 xhdpi 기준 이미지로 받았는데 가로크기가 180px인 이미지 버튼이 있다고 한다면
hdpi 에서 잘보여주려면  어떻게 계산을 해야하는가 입니다
 
xhdpi는 계산해보면 180*(160/320) => 90dp 입니다 90dp x 4개버튼 하면 360dp 딱맞습니다
그런데 hdpi는 180*(160/240) => 120dp 입니다 120dp x 4개버튼 480dp 인데요.. ㅠㅠ 갤2 320dp를 넘겨버립니다
 
뭔가 계산방법이 잘못된거 같은데 계산방법 좀 알려주세요 부탁드리겠습니다~
퍼즐인생 (170 포인트) 님이 2013년 6월 15일 질문

1개의 답변

+1 추천
 
채택된 답변
왜그렇게 어렵게 계산하는지 모르겠네요..

그냥 픽셀로 계산하면 되지않나요?

 

xhdpi기준으로 180px을 받았다면, mdpi는 90px hdpi는 135px하면 될거같은데요.

밑에 공식까지 적어놓으셧네요.

180*(160/320)이라고..

mdpi가 pixel값이고 mdpi기준으로 생각해보면 간단하게나옵니다.

mdpi가 160dpi고 hdpi가 240dpi, xhdpi가 320dpi죠.

hdpi = mdpi x 1.5

xhdpi= mdpi  x 2 하면 됩니다.

xhdpi로 180px을받았으면 mdpi는 90px hdpi는 135px로만드심될거같네요.

 

픽셀값을 dp로바꿔서 dp로계산해서 다시 픽셀로 돌려서 계산하지마시고 그냥 처음부터 픽셀로 계산하는게 편하실듯
기초개발자 (24,060 포인트) 님이 2013년 6월 15일 답변
퍼즐인생님이 2013년 6월 17일 채택됨
...