2010-07-16 139 views
79

我正在使用Android 1.5,但現在我已經轉移到最新版本。所以Android 1.5中只有一個「可繪製」文件夾,但現在有三個不同的文件夾用於在Android項目中存儲圖像。Drawable-hdpi,Drawable-mdpi,Drawable-ldpi Android

而且我已經找到了,上面寫着

  1. HDPI意味着高DPI
  2. MDPI意味着中等DPI
  3. LDPI意味着低DPI的這三個文件夾的一些文章

但這三個文件夾的確切用途是什麼以及我應該何時使用特定的文件夾來存儲圖像?

+1

可能是這個鏈接可以幫助你http://stackoverflow.com/questions/16706076/font-size-and-images-for-different-devices – 2014-07-18 06:02:50

回答

28

Supporting Multiple Screens(Android Developers)是一篇不錯的文章。您可以在「傳統應用程序的策略」部分找到有關1.5支持的更多詳細信息。

+0

+1,thanx的支持 – 2011-03-17 06:04:34

+1

我明白這個概念,但仍然不知道爲什麼我們有3個不同的文件夾。我在模擬器中運行了一個項目,只有'drawable-hpdi'中的圖標,然後是'drawable-ldpi'中的圖標。它給出了相同的結果。如果它可以自動縮放圖像,爲什麼我們不能只使用一個目錄(使用最高分辨率的圖像並根據設備對其進行縮放)? – Shashwat 2013-03-10 14:14:21

+4

@Shashwat as doc說。當Android系統選擇在運行時使用哪些資源時,它會使用某些邏輯來確定「最佳匹配」資源。這將導致應用程序崩潰,同時將較大分辨率的圖像調整爲較低的分辨率。因此建議將不同大小的圖像存儲在相應的文件夾中(即,drawable-ldpi應該包含比drawable-hdpi或drawable mdpi中的圖像更低的圖像分辨率) – 2013-04-29 07:07:41

24

要聲明您希望用於不同屏幕的不同佈局和位圖,必須將這些替代資源放置在不同的目錄/文件夾中。

這意味着,如果你xhdpi設備產生200x200圖像,你應該產生150x150hdpildpi設備相同的資源,爲100x100mdpi75x75

然後,將在適當的繪製資源目錄中的文件:

MyProject/ 
    res/ 
     drawable-xhdpi/ 
      awesomeimage.png 
     drawable-hdpi/ 
      awesomeimage.png 
     drawable-mdpi/ 
      awesomeimage.png 
     drawable-ldpi/ 
      awesomeimage.png 

您引用@drawable/awesomeimage任何時候,系統會選擇基於屏幕的密度適當的位圖。

+5

只是一個附錄 - ldpi,mdpi, hdpi和xhdpi是3:4:6:8。這解釋了答案中的圖像值是如何產生的。 – kehers 2013-09-14 18:48:45

-1

我有一個很好的解決方案。這裏我把它作爲下面的圖片加上。所以試試吧。它可能對你有幫助......!

Enter image description here

+9

這個答案應該是文字 – SMUsamaShah 2013-11-16 23:51:34