如何适配屏幕以及 android 设备是如何寻找到相对于的resources
问题
android 设备的适配一直是android ui方面最大的问题;博主最近一直在纠结android设备是如何选取哪个values文件夹里的文件的
先是去android官网查看google是如何定义这些个文件夹的适配原则的
http://developer.android.com 有兴趣的同学可以去看下
解决方法
我发现使用swxxxdp是一个比较合适的方法
那我们就来分享一下swxxxdp这个xxx是如何计算出来的
dp = px-width / (desnityDPi / 160)
我们使用android studio的preview中看见
有这些设备提供了preview
- nexus 5x — 1080x1920 429dpi
- nexus 6p — 1440x2560 560dpi
- nexus 6 — 1440x2560 560dpi
- nexus 5 —1080x1920 xxhdpi
- nexus 4 — 768x1280 xhdpi
- nexus galaxy — 720x1280 xhdpi
- nexus one / nexus s —480x800 hdpi
xhdpi –》 240~320 dpi
xxhdpi –》320~480 dpi
xxxhdpi –》 480~640 dpi
根据实验我们需要使用最大值带入计算
所以可以得出
nexus 5x /nexus 6p/ nexus6 需要使用sw411dp
nexus 5/nexus galgaxy需要使用sw360dp
nexus 4 需要使用sw 384dp
nexus one/ nexus s 需要使用sw320dp
其他设备使用哪个适配文件夹 也可以 计算出来