2014-02-27 53 views
0

我想知道如何以編程方式爲多種屏幕尺寸創建Android UI設計?例如用於3.5英寸Button或佈局組編程方式使用的寬度和高度會顯得非常小在5英寸裝置爲多種屏幕尺寸編程設計佈局

採取 類似地對於5英寸設備創建的按鈕或佈局將得到修整3.5英寸裝置。

所以想知道如何處理它

回答

2

使用密度像素(DP),而不是像素。

讀到這裏android supporting multiple screens

是使用這些輔助方法密度像素和實際像素之間的轉換:

/** 
* Converts dp unit to equivalent pixels, depending on device density. 
* 
* @param dp A value in dp (density independent pixels) unit. Which we need to convert into pixels 
* @return float value to represent px equivalent to dp depending on device density 
*/ 
public static float dpToPixel(float dp){ 
    Resources resources = MyApplication.getAppContext().getResources(); 
    DisplayMetrics metrics = resources.getDisplayMetrics(); 
    float px = dp * (metrics.densityDpi/160f); 
    return px; 
} 

/** 
* Converts device specific pixels to density independent pixels. 
* 
* @param px A value in px (pixels) unit. Which we need to convert into db 
* @return float value to represent dp equivalent to px value 
*/ 
public static float convertPixelsToDp(float px){ 
    Resources resources = MyApplication.getAppContext().getResources(); 
    DisplayMetrics metrics = resources.getDisplayMetrics(); 
    float dp = px/(metrics.densityDpi/160f); 
    return dp; 
} 

(MyApplication的是擴展應用程序類的類)

public class MyApplication extends Application 
+0

這應該是被接受的答案。 –

0

Android以非常好的方式支持各種屏幕尺寸和分辨率。 您可以通過使用最小寬度限定符來爲不同的屏幕尺寸提供不同的佈局。

您還可以爲每個屏幕密度提供不同版本的每個圖像/圖標。

查看Deacoy的鏈接瞭解更多信息。 永遠記住,開始潛入新技術的最佳方式是官方文檔。