如果我想在每個Android屏幕上創建相隔一英寸的東西,我會使用像素正確嗎?英寸和DP似乎可以縮放到屏幕的個別尺寸,這意味着在一個設備上它可以是一英寸而在另一個設備上它可以是1 1/4。Android - 絕對測量單位
此外,有沒有一種更簡單的方法來做到這一點,除了找到一英寸有多少像素,然後用實際的正確邊距添加視圖?
如果我想在每個Android屏幕上創建相隔一英寸的東西,我會使用像素正確嗎?英寸和DP似乎可以縮放到屏幕的個別尺寸,這意味着在一個設備上它可以是一英寸而在另一個設備上它可以是1 1/4。Android - 絕對測量單位
此外,有沒有一種更簡單的方法來做到這一點,除了找到一英寸有多少像素,然後用實際的正確邊距添加視圖?
您將使用密度獨立像素。也被稱爲dip或dp。
Dp確保在每個屏幕上的東西幾乎相同。 (「近乎」,因爲這是Android,具有巨大的碎片,以及自定義ROM,...等)
所以一英寸將是每個屏幕上不同數量的像素。如果使用像素,則高分辨率顯示屏上的內容會更小。因此,使用dp並且所有內容在實際屏幕上都是正確的大小。
在使用DP可能是由像素或兩個(可能!)被關閉,這可能是因爲它得到一樣好。此外,你應該儘量不要使用android —來創建像素完美的設計你將難以用不同的屏幕尺寸(而不僅僅是分辨率)
一般來說,你應該嘗試並遵循谷歌Android的material design guidelines,而是使用倍數尺寸的8dp
,而不是試圖找出多少英寸。
密度無關像素(dp)是在任何設備上似乎都是相同的實際長度的度量單位。
試試這個:創建一個寬度爲100dp的視圖並在hdpi設備上運行它。使用尺子或其他東西測量視圖的寬度。然後在mdpi設備上運行應用程序並測量寬度。你會發現兩個寬度大致相同。
這意味着,正如其名稱所暗示的,dp的實際長度與屏幕密度無關。
但是,如果您使用了像素,則實際長度將根據屏幕密度和屏幕密度而有所不同。如果屏幕比較密集,100px會顯得更短。如果屏幕不太密集,100px會顯得更長。
Get it?
tl; dr:只需使用dp!
您可以使用dp。 –