让Android屏幕适配开发更简单-我就是传说中的Google百分比布局支持库

来源:互联网 发布:数据库索引的认识 编辑:程序博客网 时间:2024/05/29 17:41

文/腾讯优测工程师  吴宇焕


相信开发同学都被安卓设备碎片化的问题折磨过,市面上安卓手机的主流屏幕尺寸种类繁多,给适配造成很大的困难。就算搞定了屏幕尺寸问题,各种分辨率又让人眼花缭乱,当你走出了前面所说的两大坑,很有可能又掉进“屏幕长宽比不同”的陷阱。。。

说多了都是泪,我就想做一名安静的开发怎么这么难?


经历过无数次跌跌撞撞,我总结出一些经验,想与大家一起分享。
已知的屏幕适配方法:
(1)按像素比:y/开发时用的屏幕像素=x/用户设备像素
(2)按长度:用dip(假设屏幕尺寸基本不变)
(3)按密度:放在l、m、h文件夹(假设屏幕尺寸基本不变,dpi越大 PX越大)


而Android 5.0 Google官方推出了百分比布局支持库,意在解决大部分屏幕适配的问题。下面我就向大家详细介绍一下:
1、Google百分比布局支持库
(1)支持的布局


(2)支持的属性


(3)使用方法
1、加载android-support-percent-lib
dependencies {
    compile 'com.android.support:percent:22.2.0'
}
2、PercentRelativeLayout




3、PercentFrameLayout




实现原理


(1)View绘制过程
整个View树的绘图流程是在ViewRootImpl类的performTraversals()方法中,整个流程的大致流程图如下:


(2)android-support-percent实现过程


根据view的绘制过程,通过阅读百分比布局库源码,绘制流程如下:


今天对于Google百分比布局支持库就先说这么多,后续如果还有新的经验会及时与大家分享。最后说一句,想更有效、更放心的解决Android屏幕适配问题,多多体验腾讯优测,千余款真机等你来测!


2 2