2016-04-10 33 views
0

如果我想在每個Android屏幕上創建相隔一英寸的東西,我會使用像素正確嗎?英寸和DP似乎可以縮放到屏幕的個別尺寸,這意味着在一個設備上它可以是一英寸而在另一個設備上它可以是1 1/4。Android - 絕對測量單位

此外,有沒有一種更簡單的方法來做到這一點,除了找到一英寸有多少像素,然後用實際的正確邊距添加視圖?

+0

您可以使用dp。 –

回答

0

您將使用密度獨立像素。也被稱爲dipdp

Dp確保在每個屏幕上的東西幾乎相同。 (「近乎」,因爲這是Android,具有巨大的碎片,以及自定義ROM,...等)

所以一英寸將是每個屏幕上不同數量的像素。如果使用像素,則高分辨率顯示屏上的內容會更小。因此,使用dp並且所有內容在實際屏幕上都是正確的大小。

在使用DP可能是由像素或兩個(可能!)被關閉,這可能是因爲它得到一樣好。此外,你應該儘量不要使用android —來創建像素完美的設計你將難以用不同的屏幕尺寸(而不僅僅是分辨率)
一般來說,你應該嘗試並遵循谷歌Android的material design guidelines,而是使用倍數尺寸的8dp,而不是試圖找出多少英寸。

0

密度無關像素(dp)是在任何設備上似乎都是相同的實際長度的度量單位。

試試這個:創建一個寬度爲100dp的視圖並在hdpi設備上運行它。使用尺子或其他東西測量視圖的寬度。然後在mdpi設備上運行應用程序並測量寬度。你會發現兩個寬度大致相同。

這意味着,正如其名稱所暗示的,dp的實際長度與屏幕密度無關。

但是,如果您使用了像素,則實際長度將根據屏幕密度和屏幕密度而有所不同。如果屏幕比較密集,100px會顯得更短。如果屏幕不太密集,100px會顯得更長。

Get it?

tl; dr:只需使用dp!