先了解下api中的工具類
android.util.displaymetrics:最主要的顯示引數。
獲得displaymetrics可以通過2種方式:
1.在activity中使用activity.getresources().getdisplaymetrics()
2.新建乙個例項,通過display類的工具方法輸出到新例項中
displaymetrics metrics = new displaymetrics();
activity.getwindowmanager().getdefaultdisplay().getmetrics(metrics);
注意displaymetris並沒有重寫equals方法,所以新舊例項equals是不等的。
通過display的常量,可知密度共有三種:
[list]
[*]density_high
[*]density_medium
[*]density_low
[/list]
並且通過系統的源**:
return systemproperties.getint("qemu.sf.lcd_density",
systemproperties.getint("ro.sf.lcd_density", density_default));
可知系統獲取環境變數"ro.sf.lcd_density"的值為實際裝置的密度值,預設為常量density_default,進一步產看常量density_default的定義:
density_default = density_medium
由此可可知密度獲取的流程,且預設值為density_medium!
displaymetrics主要屬性:
[list]
[*]density_high
[*]density_medium
[*]density_low
[/list]
res資料夾下面會有如下幾個子目錄
├─drawable
├─drawable-hdpi
├─drawable-ldpi
├─drawable-mdpi
├─drawable-nodpi
android 螢幕自適應
細說 layout weight 目前最為推薦的 android多螢幕自適應解決方案。該屬性的作用是決定控制項在其父布局中的顯示權重,一般用於線性布局中。其值越小,則對應的layout width或layout height的優先順序就越高,一般橫向布局中,決定的是 layout width 的優先...
android 自適應 多螢幕支援
1 螢幕相關概念 1.1解析度 是指螢幕上有橫豎各有多少個畫素 1.2螢幕尺寸 指的是手機實際的物理尺寸,比如常用的2.8英吋,3.2英吋,3.5英吋,3.7英吋 android將螢幕大小分為四個級別 small,normal,large,and extra large 1.3螢幕密度 每英吋畫素數...
android 自適應 多螢幕支援
android 自適應 多螢幕支援 1 螢幕相關概念 1.1解析度 是指螢幕上有橫豎各有多少個畫素 1.2螢幕尺寸 手機螢幕尺寸指的是手機實際的物理尺寸,即螢幕的實際大小。android將螢幕大小分為四個級別 small,normal,large,and extra large 1.3螢幕密度dpi...