Android简单高效的屏幕适配方案--SmallestWidth适配

smallestWidth也叫做sw限定符,是在Android3.2引入的一种用来适配平板的方案。使用这种方案可以简单高效稳定的实现屏幕路适配。
原理: Android会识别手机宽高中最小的那个值(其实就是宽度),然后根据识别到的数值去资源文件中寻找对应的文件在这里插入图片描述
比如:我的华为手机屏幕宽度是300dp,对应的就是sw300dp的文件夹。再来看看sw300文件夹下的dimens.xml文件在这里插入图片描述
上图是以设计图宽度375dp为标准生成的。把宽度分为375份 300/375=0.8.所以1份相当于0.8dp。这样就可以依照设计图的尺寸填写控件大小了,也就实现了宽度为300dp手机的适配。

如果没有找到这个手机的尺寸,它会寻找最接近的尺寸。比如我这没有生成sw300文件夹。宽度为300dp的手机就会自动找到sw310的文件夹,有很好的容错机制。
遇到需要适配的手机型号,只需要生成对应的资源文件就可以了。

缺点就是文件夹的增加会导致apk增加,应该有几百kb的样子。

sw文件压缩包下载(上面截图展示的那几种尺寸):sw适配文件下载

有需要的也可以下载别人提供的sw生成项目代码自己生成想要的文件:sw文件生成项目代码

©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页