2012-05-09 76 views
10

我在drawable文件夾(我剛剛開始在Android開發中,因此我在res中創建了drawable文件夾)尺寸爲250 * 70像素的圖像,並且具有較高尺寸的相同圖像drawable-large文件夾;但圖像沒有像我期望的那樣。Android:瞭解可繪製文件夾

任何人都可以解釋背後的原因/ 3個可繪製文件夾的目的?

我應該在哪裏存儲圖像,以便在兩種模式(橫向&縱向)和所有移動設備(包括平板電腦)中正確顯示?

我希望我的圖像可以動態縮放到設備屏幕的大小。

任何人都可以分享您的意見或鏈接進行搜索嗎?

+0

你應該閱讀列表[本](http://developer.android.com/guide/practices/screens_support.html#qualifiers)... – candyleung

回答

14

默認的Android保持不同分辨率的原因,圖像的三個文件夾背後卻是使用或Android設備上應用要執行的分辨率。

hdpi圖像文件夾保持圖像的Android寬屏幕集或Android手機與更高的分辨率。

LDPI對於較低質量的圖像,其通過前面的套機器人

MDPI爲介質的圖像的支持支持 xhdi圖像與最大分辨率設備文件夾中。

Android OS通過檢查兼容設備及其分辨率來自行選擇圖像。

希望它有幫助。接受,如果你得到你的解釋。

+0

我可以把所有的圖像放入同一個文件夾,但給他們適當的結局?像xxx_ldpi.png,xxx_mdpi.png,xxx_hdpi.png,...... –

1

您應該使用drawable-hdpi文件夾而不是drawable-large

而且Supporting Multiple Screens頁面可能有助於您

+0

如果你有一個手機即xhdpi加載一個圖像在320 dpi的寬度爲100px,在mdpi(160)的圖像是50px對不對?如果我的手機是xhdpi,而我的平板電腦是mdpi,那麼如果屏幕密度較低,如何讓圖像顯得更大?我需要兩個image.png嗎? image_phone.png和image_tablet.png?我會將它存儲在可繪製的 - xlarge - mdpi中嗎?如果是這樣,這是不是意味着我需要將近32個文件夾才能支持mdpi,hdpi,xhdpi,xxhdpi,small,normal,large,xlarge(3.2以下)以及sw320dp,sw480dp,sw600dp,sw780dp?我哪裏錯了? – cjayem13

21

文件夾名稱必須是:

  • /提拉 - LDPI對於低密度屏幕
  • /提拉 - MDPI對於中密度屏幕
  • /提拉 - 華電國際對於高分辨率屏幕
  • /drawable-xhdpi對於超高分辨率屏幕

/drawable應該保留給您不需要的資產再其設備或XML繪製資產

然後最重要的是,你可以通過使用配置限定符提供依據配置不同的資源,你可以在這裏http://developer.android.com/guide/topics/resources/providing-resources.html

閱讀所有關於它,例如,你可以有較高的分辨率資產景觀帶夾

  • /提拉 - 土地華電國際

希望幫助

6

繪製,LDPI

繪製,MDPI

繪製-hdpi

抽拉-xhdpi

抽拉-tvdpi

抽拉-nodpi

繪製-xxhdpi

繪製-xxxhdpi

We can also use "drawable-xxhdpi" 
xxhdpi (480dpi, Android 4.1 or later) 

請參閱 「Android的表格欄」 下面的鏈接

http://en.wikipedia.org/wiki/Smartphone

請在下面的鏈接,參閱 「表1」 (xxxhdpi)

http://developer.android.com/guide/practices/screens_support.html#xxxhdpi-note

注意:drawable-xxxhdpi限定符僅用於提供一個啓動器圖標,該圖標在xxhdpi設備上可能比平常顯示的要大。您無需爲所有應用的圖片提供xxxhdpi資源。

注意將在下面的鏈接 http://developer.android.com/design/style/iconography.html#xxxhdpi-launcher

+0

現在每個人的min sdk target都是15或更大,這意味着ldpi,mdpi和hdpi文件夾甚至沒有被查看。我的建議是排除這些文件夾中的drawable。真的,除非你有非常小的細節資產,否則你只能在xhdpi中放置drawable並且節省一些空間。 – portfoliobuilder

+0

如果用戶想要節省空間,那麼用戶可以使用「Nine Patch」圖像。因爲這會節省很多空間 – Sakthimuthiah

0

1)不同的文件夾繪製背後的原因 - 使用我們的應用程序時,通過包容每個設備的屏幕密度,以增強用戶體驗。

2)「我應該在哪裏存儲...」 - 理想情況下,您爲每個屏幕密度存儲適當大小的圖像。如果你是初學者,只需使用一個文件夾,現在不用擔心。

4)圖像縮放 這是一個很酷的指南,可以幫助您與圖像縮放裏面的應用程序: https://robots.thoughtbot.com/android-imageview-scaletype-a-visual-guide

3)相關鏈接: https://material.io/devices/ - 所有設備和密度