2010-10-08 49 views
1

我有一個32x32像素的PNG文件。我使用了其中的8個作爲我的應用程序的行中的drawables。這些drawable不在hdpi,mdpi或ldpi文件夾中。我發現,當啓動任何3個標準尺寸的模擬器時,所有8個drawable的屏幕視圖看起來幾乎相同。如何根據Android手機的分辨率將PNG文件定義爲可繪製對象的大小?

我注意到,我使用LDPI仿真器(QVGA)具有240×320的分辨率。 8 x 32 = 256,因爲我可以看到我所有的drawable(以及中間的空間),所以我打賭一些東西正在改變它們的大小。

我讀過Android開發者頁面的Supporting Multiple Screens文件,但我還是不明白什麼是真正發生的事情。你能否用自己的話來解釋我的drawable的大小以及SDK知道如何自動修改它們?

回答

4

當然 - 系統自動調整從繪製目錄中的圖片,以對應於DPI設備的,如果你不定義自己。所以實際上'drawable'目錄幾乎與'drawable-mdpi'目錄相同,因爲你沒有定義ldpi和hdpi版本,系統會自動將它們從你的mdpi資源中構建出來。請參閱此處的(1.):http://developer.android.com/guide/practices/screens_support.html#support - 「預先縮放資源(如圖像資源)」

當然,您的圖標在ldpi設備上看起來好像不錯,但在hdpi設備上看起來很醜。這是因爲mdpi圖標被縮放以匹配更高的尺寸,從而導致每個像素的信息更少。

+0

整潔。謝謝。在hdpi周圍設計圖標是否明智,並因此將所有其他密度縮小? – user432209 2010-10-08 13:40:18

+0

我個人會爲hdpi和mdpi創建圖標,讓系統自動縮小圖標,但創建最重要圖標的ldpi版本 - 例如發射器圖標。或簡單的版本:聘請設計師,讓他爲你做的工作。 ;-) – mreichelt 2010-10-08 15:14:09

+0

哈,你說得對。玩圖像以獲得美好的東西已經浪費了我的時間,特別是因爲我不知道我在做什麼。 – user432209 2010-10-08 15:56:40

相關問題