2015-06-22 127 views
0

在android應用程序中,我們維護各種屏幕分辨率的dimen.xml。比方說,我使用設備X作爲基礎開發設備,並且定義了相對於設備X的dimen.xml。現在,如果我想知道對於不同密度設備將對應的dimen.xml是什麼,那麼可以在此處遵循哪些過程/策略? 例如: 如果我在dimen.xml中輸入define margin_10 as 10dp。根據密度類型(hdpi,xhdpi,xxhdpi,xxxhdpi),margin_10對不同dimen.xml的值有多少? 謝謝在Android設備上確定各種屏幕尺寸的DP

+0

如果你使用dp,大多不需要爲各種密度類型維護不同的維數。作爲**密度無關像素**擴展的dp與設備密度無關,您可能不需要單獨的值。只有在使用「像素」像素值時才推薦使用不同的值。 –

回答

0

由於您在dp單位中定義了尺寸,因此您無需擔心爲其他分辨率提供多種尺寸。

從顯影劑文檔:

一個DP是對應於一個像素的物理尺寸在160 dpi的密度獨立像素。

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

這是它提供了各種密度

要生成圖像的圖像資源或位圖,你應該在矢量格式的原始資源開始並用下面的大小規模爲每一個密度圖像:

  • xhdpi:2.0
  • HDPI:1.5
  • 個MDPI:1.0(基線)
  • LDPI:0.75

希望這有助於。

0
values folder containing dimens.xml file in which whatever screen size you 
    specified, it is consider as baseline as per google doc means 10dpx1 as per your question.. 
    now you set this size for different devices than procedure is like following.. create folder for different Screen Size 
    1) values->dimens.xml [default as per base line hdpi] 10dp x 1.0 
    2) values_sw320dp ->dimens.xml [xhdpi] 10dp x 1.5 result set to dimens.xml file of values_sw320dp folder 
    3) values_sw480dp -> dimens.xml [for xxhdpi] 10dp x 2.0 result set to dimens.xml file of values_sw480dp folder 
    4) values_sw640dp -> dimens.xml [for xxxhdpi] 10dp x 2.5 result set to dimens.xml file of values_sw640dp folder as like you can set size for all devices as per google document.. 
    here you just need to create folder and inside folder create dimens.xml file for working with different screen size in android.