android layout values drawable等分辨率适配

使用分辨率适配

分辨率匹配规则如下:

适配:layout-widthxheight, 例如:layout-1920x1080
适配:values-widthxheight, 例如:values-1920x1080
适配:drawable-widthxheight, 例如:drawable-1920x1080

*:
使用 layout-1920x1080,values-1920x1080,drawable-1920x1080, 不起作用。。。
心想有个导航栏也占用了高度,但是安卓不会这么智障吧,减去导航栏这个分辨率就很难看了。然而事实是,确实就是这么智障。
最终版本

适配:layout-widthxheight, 例如:layout-1920x1017
适配:values-widthxheight, 例如:values-1920x1017
适配:drawable-widthxheight, 例如:drawable-1920x1017

使用屏幕尺寸适配

像素密度一样的时候,dp的作用就微乎其微了,这个时候dp值应该按比例变大。
布局匹配规则如下:

适配:layout-small (屏幕尺寸小于3英寸左右的布局)
适配:layout-normal (屏幕尺寸小于4.5英寸左右)
适配:layout-large (屏幕4英寸-7英寸之间)
适配:layout-xlarge (屏幕7-10英寸之间)

适配:values-small (屏幕尺寸小于3英寸左右的布局)
适配:values-normal (屏幕尺寸小于4.5英寸左右)
适配:values-large (屏幕4英寸-7英寸之间)
适配:values-xlarge (屏幕7-10英寸之间)

drawable 同上

使用像素密度适配

dpi是dot per inch,每英寸多少点,ppi是 Pixel per inch,每英寸像素数,针对显示器的设计时,dpi=ppi。
通过代码获取设备像素密度dpi:

// getResources().getDisplayMetrics().densityDpi;
context.getResources().getDisplayMetrics().densityDpi;

手动计算规则:

分辨率参数:1280x800分辨率
物理尺寸参数:屏幕对角线长25.6厘米-10英寸      屏幕宽度21.6厘米-8.5英寸     屏幕高度13.7厘米-5.4英寸

像素密度 = 开根号(宽像素平方+高像素平方)/对角线长
dpi = sqrt(1280^2 + 800^2) / 10 = 150
150 == mdpi

匹配规则如下:

layout-ldpi (0~120)
layout-mdpi (120~160)
layout-hdpi (160~240)
laytout-xhdpi (240~320)
layout-xxhdpi (320~480)
layout-xxxhdpi (480~640)
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值