1.
低密度向上找,高密度向下找
一般需要480*800。但只要涉及到填充屏幕的就必須要切一套1280*720(直接用蘋果手機的1136*640的也行)的。將這大圖放入xhdpi目錄下。
小圖無需切第二套圖,因爲小圖進行拉昇也沒有多大的區別,而全屏幕大圖拉昇的話就會模糊。
ldpi 120dpi
mdpi 320*480 160dpi
hdpi 480*800 240dpi
xhdpi 1280*720 320dpi
xxhdpi 1920*1080
縮放因子 3:4:6:8:12
2.添加layout—1280*720的目錄
在相應目錄下添加資源,相應屏幕的手機會自動加載對應目錄下的資源。
3. 儘量使用weight。
4. 使用代碼動態計算
+0.5f是爲了四捨五入
5. 創建values-1280*720的目錄
在目錄下創建dimens.xml文件,在該文件中配置。
橫屏豎屏目錄區分
在res目錄下建立layout-port和layout-land兩個目錄,裏面分別放置豎屏和橫屏兩種佈局文件,以適應對橫屏豎屏自動切換
多屏幕適配的4條黃金原則
1) 在layout文件中設置控件尺寸時應採用fill_parent、wrap_content、match_parent和dp;
具體來說,設置view的屬性android:layout_width和android:layout_height的值時,wrap_content,match_parent或dp比px更好,文字大小應該使用sp來定義。
2) 在程序的代碼中不要出現具體的像素值,在dimens.xml中定義;
爲了使代碼簡單,android內部使用pix爲單位表示控件的尺寸,但這是基於當前屏幕基礎上的。爲了適應多種屏幕,android建議開發者不要使用具體的像素來表示控件尺寸。
3) 不使用AbsoluteLayout(android1.5已廢棄) ,可以使用RelativeLayout替代;
4) 對不同的屏幕提供合適大小的圖片。
不同大小屏幕用不同大小的圖片,low:medium:high:extra-high圖片大小的比例爲3:4:6:8;舉例來說,對於中等密度(medium)的屏幕你的圖片像素大小爲48×48,那麼低密度(low)屏幕的圖片大小應爲36×36,高(high)的爲72×72,extra-high爲96×96。
不同的layout
Android手機屏幕大小不一,有480x320, 640x360, 800x480……
怎樣才能讓Application自動適應不同的屏幕呢?
其實很簡單,只需要在res目錄下創建不同的layout文件夾,比如:layout-640x360、layout-800x480……所有的layout文件在編譯之後都會寫入R.java裏,而系統會根據屏幕的大小自己選擇合適的layout進行使用。
使用9-patch PNG圖片
1 圖片適配
2 多套佈局適配(這個大數字一定要寫在前面,小的數字寫在後面,中間X,不是星號eg:layout -1280 x 720)
3 dimens適配()在values底下建立各種不同dimens.XML,然後進行適配
4 代碼進行適配
5 權重適配(比例適配)