Android drawable檔案夾的使用

來源:互聯網
上載者:User

Android drawable檔案夾的使用

開學到現在一直都在學著去搞明白一個簡單的遊戲。寫完代碼之後,發現主介面顯示的某些圖片比正常的大了許多。
本來以為是代碼寫錯了,反反覆複,來來回回的檢查代碼,真心沒有錯誤。。。崩潰了!!!
後來就嘗試著把圖片從drawable-mdpi中移動到了hdpi檔案夾下,在運行程式的時候,竟然好了!!MyGod,越是簡單的東西就越容易出錯。也只能怪自己學的不紮實不透徹了。在網上找到一些解釋:android為開發人員提供了兩種解決適配問題的辦法,第一種方式是使用dip的單位(dip: device independent pixels(裝置獨立像素). 
不同裝置有不同的顯示效果,這個和裝置硬體有關,一般我們為了支援WVGA、HVGA和QVGA 推薦使用這個,不依賴像素);
另一種是使用不同的drawable檔案夾,如:-hdpi    近似於240dpi的進階顯示密度的螢幕-mdpi    近似於160dpi的中級顯示密度的螢幕-ldpi    近似於120dpi的低級顯示密度的螢幕-xhdpi   近似於320dpi的超高級顯示密度的螢幕圖片縮放比列為 3 :4:6:8   ldpi,mdpi,hdip,xhdipAndroid系統會手機螢幕的大小及螢幕尺寸去選擇不同檔案夾下的圖片資源,以此來實現在不同大小螢幕解析度下適配的問題。比如在一個低解析度的手機上,Android就會選擇ldpi檔案夾下的圖片,但是如果沒有在ldip的檔案夾下找到相關的資源檔,
Android系統會首先從hdpi檔案夾中選擇檔案,然後對圖片資源進行縮放處理,顯示在螢幕上;如果hdpi檔案夾下也沒有的話,
會在預設的drawable檔案夾中尋找。因此圖片放錯檔案夾的話,就會顯示大小不同。正常顯示的圖片:放大後的圖片:出現第二個圖的原因是將hdpi下的圖片放到了預設的檔案夾下。本身是同一張圖片,由於系統沒有在hdpi檔案夾中找到對應圖片,在預設的檔案夾下找到了,但是這時系統會認為該圖適用於中等解析度的螢幕,
如果直接放到高解析度的手機上不能適配,所以系統會自動的將圖片放大,所以雖然是同一張圖片,但是現實出來就是一個正常,一個被放大。同理,如果同一張圖片,放在ldpi的檔案夾下,在低解析度的手機上顯示正常,但是如果放在hdpi檔案夾中,系統認為該圖是高解析度顯示的,
要將圖片縮小處理,所以顯示出來的效果就是圖變小了。所以才會出現明明是一張圖片,只是放在不同的檔案夾中,顯示出來的效果就不同!

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.