關于系統的資源配置的目錄(我只列出一些大概,默認項目會有一些資源配置目錄)
Android系統支持多配置資源文件,我們可以追加新的資源目錄到你的Android項目中。命名規范: 資源名字-限制符
layout/drawble文件夾 | 說明 |
---|---|
layout | 默認中等屏幕 |
layout-small | 小屏幕 |
layout-large | 大屏幕 |
layout-xlarge | 特大屏幕 |
layout-land | 橫屏 |
layout-port | 豎屏 |
drawable | 默認中等密度 |
drawable-hdpi | 高密度 ~240dpi |
drawable-mdpi | 中等密度 160dpi |
drawable-xhdpi | 更高密度 ~320dpi |
drawable-nodpi | 所有密度資源,無論什么密度屏幕都會適配。 |
drawable-tvdpi | 介于mdpi~hdpi 約213dpi 主要應用在電視。 |
注:如果沒有指定橫屏或豎屏,則上面的布局和位圖都適配橫豎屏。如果要指定橫屏,例如:drawable-land-hdpi豎屏drawable-port-hdpi,還有關鍵是drawable-xlarge和layout-xlarge,對api level都要求在9之上,等于說,你用android2.2系統的平板或者手機根本不匹配layout-xlarge。因為api level是8。drawable-tvadpi這個api等級需要13以上。
其實上面的layout-large這個目錄其實是個范圍。當系統根據當前屏幕的大小和密度,決定程序應該匹配那個目錄。你也可以單獨定制某些不符合谷歌標準的山寨版layout-l024x600(中間的符合是英文下的x字母),其中1024和600的單位是dp。你可以根據你設備的分辨率和密度,來判斷你的設備需要定義那個文件。
但是,官方推薦使用尺寸來表示資源layout-large,不推薦使用分辨率layout-1024*600。
建議大家多看文檔,官方說明:
xlarge screens are at least 960dp x 720dp
large screens are at least 640dp x 480dp
normal screens are at least 470dp x 320dp
small screens are at least 426dp x 320dp
上面是定義廣義大小布局資源適配的一個范圍,大家可以根據自己的設備知道系統會匹配那個文件的布局。
如果手上有個山寨華為的賣的比較火的mediapad,大家知道分辨率1280*800 密度尺寸7寸
通過勾股定了和分辨率可以得出其密度為215.69。然后根據dp=px/(dpi/160),可以得出個范圍593.471。所以這個設備系統會匹配layout-large這個資源布局文件。