Android屏幕適配(命名不同資源文件夾wdp)

1、dpi(dot per inch),即每英寸像素,所有的android設備都會被分成120(low),160(medium),240(high),320(xhigh)四種,後來隨着市場上android設備越來越多,google官方又增加了213(Added in API level13),480(Added in API level16),640(Added in API level18),三種dpi。比如320*240分辨率的屏幕物理尺寸2英寸*1.5英寸,dpi=160;
2、dp或dip(density-independent pixel)邏輯密度計算單位,與像素的換算方式爲px=dp*(dpi/160)。
 
 
在android3.2以前,所有的資源文件都有相應的xhdpi,hdpi,mdpi,ldpi四種文件來對應,android3.2以後,爲了提供更精準的對佈局文件的控制,可以通過爲資源文件(res目錄下文件)增加後綴來指定該文件夾裏的xml佈局文件或color.xml,string.xml是爲哪種大小的屏幕使用。
第一種後綴:sw<N>dp,如layout-sw600dp, values-sw600dp
這裏的sw代表smallwidth的意思,當你所有屏幕的最小寬度都大於600dp時,屏幕就會自動到帶sw600dp後綴的資源文件裏去尋找相關資源文件,這裏的最小寬度是指屏幕寬高的較小值,每個屏幕都是固定的,不會隨着屏幕橫向縱向改變而改變。
第二種後綴w<N>dp 如layout-w600dp, values-w600dp
帶這樣後綴的資源文件的資源文件制定了屏幕寬度的大於Ndp的情況下使用該資源文件,但它和sw<N>dp不同的是,當屏幕橫向縱向切換時,屏幕的寬度是變化的,以變化後的寬度來與N相比,看是否使用此資源文件下的資源。
第三種後綴h<N>dp 如layout-h600dp, values-h600dp
這個後綴的使用方式和w<N>dp一樣,隨着屏幕橫縱向的變化,屏幕高度也會變化,根據變化後的高度值來判斷是否使用h<N>dp ,但這種方式很少使用,因爲屏幕在縱向上通常能夠滾動導致長度變化,不像寬度那樣基本固定,因爲這個方法靈活性不是很好,google官方文檔建議儘量少使用這種方式。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章