2011-08-13 4 views
6

갤럭시 탭 화면 해상도 (세로 모드에서)가 600px이고 화면 너비가 3.55inch이면 화면 밀도는 600/3.55 = 169 dpi이됩니다. 아는 염두에 장치 독립적 인 화소 (DP)를 계산하는 방법 (http://developer.android.com/guide/practices/screens_support.html) 보관 :삼성 갤럭시 탭 화면 밀도 이해

px = dp * (dpi/160); 
600 = dp * (169/160); 
dip = 568 

그래서 568dp (밀도 독립 화소)의 수평 라인 드로잉 정확히 폭과 일치해야 위치 0에서 시작 선폭 화면의. 그러나 장치에서이 방법을 사용하면 화면 너비는 400dp입니다. 다시 같은 수식을 사용하지만 점점 dpi의 경우 :

600 = 400 * (dpi/160); 
dpi = 240 

그래서 240dpi, 3.55inch 화면 폭 600pixels 데, 이는 하나 개의 물리적 픽셀 달리 파라미터보다 '점'으로 구성된 것을 의미 않는다에 대응 너비는 852pixel (3.55*240)입니다.

dpi는 인치당 도트 수를 의미합니다. 그러나 이것은 ... 사실이없는 것으로 보인다

나중에 추가 :
이 (http://developer.android.com/guide/topics/resources/more-resources.html#Dimension)는 말한다 :

160dp가 1 인치에 상관없이 화면 밀도 항상

어느 사실이 아닙니다. 심지어 나중에 Difference between android dimension: pt and dp

추가 : : 그냥이의 측정 소스를 확인 내가 해달라고 이유는 규칙을 위반하는 160dp = 1inch가 제어 폭을 지정할 때하는 것은 가령 할 수 있다는 사실에 이르게한다는 점이다
을 이 갤럭시 탭에 포함됩니다 320dp 설명 BR 스텐

+0

dip과 장치 독립적 인 픽셀을 혼동스럽게 생각할 수 있습니다. – Petrus

+0

안녕하세요, 제가 잘못하고있는 것을 구체적으로 설명해 주실 수 있습니까? 나는 어디에서 실수를 했는가? – STeN

+0

내가 전에 게시 한 내용을 잘못 읽었을 수도 있지만 아마도 을 확인하고 싶을 것입니다. 나는 당신의 계산에서 기대하는 밀도를 반환하지 않을 수도 있다고 생각합니다. 나는 당신의 수학을 검사하지 않는다. 그러나 밀도가 169가 아니라 160이라면 모두 함께 모일 수 있을까? – Petrus

답변

8

갤럭시 탭 (7 ")에 대한이 ... 정말 필요하고 당신이 600x1024px 화면에서 무엇을 기대 다음 더 큰

감사 아무튼 것을 훨씬 더 큰 부분 . '는 t가 실제 밀도를보고이 문제를 이해하려면 다음 문서 읽기 : 분명히

http://realmike.org/blog/2010/12/21/multiple-screen-sizes-with-processing-for-android/

, 즉 그들이 갤럭시했을 때 삼성 찾았는지도 있어요탭. 갤럭시 탭은 170 dpi의 7 인치, 1024 x 600 화면을 가지고 있습니다. 그러나 탭은 밀도를 "mdpi"가 아니라 "hdpi"로보고하므로 레이아웃은 두 번째 스크린 샷과 똑같습니다. 그들이 "mdpi"를 사용했다면, 아이콘은 .28 "너비이고,"hdpi "는 넓고, 너비가 .42"입니다. 큰 거래가 아니며, 레이아웃이 이렇게 더 예쁘게 보입니다.

이 문서에는 문제를 이해할 수있는 이미지가 포함되어 있습니다.

+1

안녕하세요. 좋은 기사입니다.하지만 어떻게 위젯 크기를 올바르게 지정해야합니까? 장치가 실제 밀도를보고하는 한 dp를 사용하는 것이 좋습니다. Galaxy-Tab과 같은 의사 밀도가 아니라면 ... – STeN

+0

dp를 사용하여 지정해야합니다. 갤럭시 탭은 실제 밀도를 사용하는 경우 표시되는 것보다 더 큰 물체를 표시하지만 삼성은 이것이 더 나은 결과를 얻는다고 생각합니다. 그 게시물의 이미지로 판단 할 때, 나는 삼성에 동의한다! 또한 다음 팁을 따르십시오. http://developer.android.com/guide/practices/screens_support.html#screen-independence –

+0

좋습니다. 어쨌든 Android 설명서에서 ** 160dp = 1inch **라고 잘못 말한 것입니다. 이것은 실제로 오도하는 것입니다. 또한 dpi가 드로어 블 소스를 선택하는 가장 좋은 방법이 아닌 것처럼 보입니다. pseduo 밀도 (논리적 밀도)가 사용될 때 화면 크기를 고려하지 않기 때문에 향후 Google에서 변경 될 수 있습니다. ** DisplayMetrics ** 클래스를 사용하면 논리 밀도뿐만 아니라 인치당 정확한 물리적 픽셀 (즉, 169 dpi)을 반환합니다. – STeN