Android 屏幕适配相关的学习总结

先说几个概念

1、屏幕物理尺寸:单位inch 如4.5英寸,为屏幕对角线长度。

2、屏幕分辨率:单位px*px 如1024*768。

3、屏幕密度ppi:单位dpi ,通过勾股定理和上面两个值可以确定屏幕的密度 如160dpi

4、屏幕无关像素:单位dp/dip,这个是虚拟单位,之所以需要它是因为我们希望有这样一个单位,可以在不同密度的屏幕上相对于屏幕的物理尺寸成比例的缩放,给人相近的视觉效果。

dp与px之间的换算关系

规定以密度160为标准,在密度为160的屏幕上 1dp = 1px。其它密度的屏幕都与160想比形成一个系数——scale 如320的系数为scale = 2 1dp =scale*1px。

屏幕根据密度分类:

1、ldpi:0.75 密度为120;

2、mdpi:1.0 密度为160

3、hdpi:1.5 密度240;

4、xhdpi:2 密度320;

中间的数字是dp与px换算的比值;据说人眼最大可视密度为300ppi。

屏幕适配有几种方式:

1、根据分辨率适配

2、根据密度区分进行适配

3、根据屏幕的宽高(dp)进行适配

完全按照第一种进行适配的工作量会很大,而且肯定有漏掉的,对于不是很复杂的布局第二种就完全可以满足,因此建议的适配方案是以第二种为主,在针对自己的需要添加第一种的适配方案。如:values-land-hdpi-1280×800 ,land为横屏 hdpi为高密度 1280×800为对应的分辨率。

匹配过程中的一些常见字符及意义

1、

根据不同的屏幕分辨率来区分不同的设备,比如一些常见的名字:

QVGA:       240*320     Quarter VGA 四分之一的意思(1/2 * 1/2 = 1/4)

HVGA:       320*480     Half size VGA 的意思 二分之一(1/2 * 1 = 1/2)

VGA:         480*640      远古时代的电脑显示器的分辨率,其他的都是以此为基础来缩放

WVGA:      480*800      Wide VGA

SVGA:       600*800      Super VGA

之间的关系:

ldpi            QVGA         240*320           0.8

mdpi          HVGA         320*480           1.0

hdpi           WVGA        480*800           1.5

hdpi           qHD           540*960           1.5

xdpi           WXGA        720*1280          2

2、

values-v11代表在API 11+的设备上
values-v14代表在API 14+的设备上

如同时存在上面两个文件夹,则选择规则是这样的——API 11,12,13选择values-v11;大于14的选择values-v14

3、

第一种后缀: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官方文档

建议尽量少使用这种方式。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值