2011-08-04 126 views

回答

0

你應該總是使用dp。如果你需要在像素值,你可以使用此方法 -

public static int dpToPixels(Context context, float dp) { 
    final float scale = context.getResources().getDisplayMetrics().density; 
    return (int) (dp * scale + 0.5f); 
} 
0

總是使用

密度獨立的像素

0

如果你看一下reference文檔,你會看到這是DP點。具體來說,

密度獨立像素相當於160 dpi屏幕上的一個物理像素,它是系統爲「中等」密度屏幕假設的基準密度。在運行時,系統根據使用的屏幕的實際密度,根據需要透明地處理dp單位的任何縮放比例。將dp單位轉換爲屏幕像素很簡單:px = dp *(dpi/160)。例如,在240 dpi屏幕上,1 dp等於1.5個物理像素。定義應用程序的用戶界面時,應始終使用dp單位,以確保在不同密度的屏幕上正確顯示您的用戶界面。

所以,除非你想限制在一個單一的屏幕大小和密度,否則總是使用dp。

0

除了dp,您還可以使用pt(一英寸的點= 1/72),in(英寸)和mm(毫米)。

由於所有這些單位都基於實際的物理尺寸,所以您的UI元素將在任何設備上保持相同的物理尺寸。

相關問題