values-swdp,px,dp,dpi

1,values-swxxdp用來做適配,表示最小寬度
最小寬度計算方法

sw=160*手機寬度像素/dpi

dpi獲得方式

dpi= context.getResources().getDisplayMetrics().densityDpi

比如我的vivo x7plus分辨率爲1080*1920
根據上面公式得到dpi=480

那麼

sw=160*1080/480=360dp

所以會在values-sw360dp下找相對應的尺寸dimens

2,px,dp換算

1 px = 1dp * density(由DPI決定)

density = dpi / 160
所以vivox7plus density=3
所以在1080*1920的ui圖上300px等於100dp

3,values-sw360dp和,values-sw480dp對應關係
比如在sw360dp中
定義了

<dimen name="sw1">3dp</dimen>

那麼在sw480dp中

<dimen name="sw1">4dp</dimen>

對應關係爲360/480=3:4;
用來做適配文件換算公式

找了很多資料總結出來的,有問題歡迎指出

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章