关于安卓布局优化的几点建议

来源:互联网 发布:淘宝拍卖车辆靠谱吗 编辑:程序博客网 时间:2024/05/22 03:37

从google安卓官方文档中学了安卓布局优化的相关知识,现总结几点分享给大家:

1.能不用LinearLayout就尽量不要用,可以用RelativeLayout代替。因为LinearLayout是一种嵌套布局,很多情况下需要通过层层嵌套才能实现我们想要的效果,而在安卓中布局嵌套越多在view绘制的时候会增加遍历次数,对性能的影响就越大

2.布局要尽量设计成矮而宽,避免出现高而窄的布局。原因也是因为布局越深就说明嵌套越多,对性能的影响就越大

3.父布局的宽和高能设置成固定值或者match-parent就尽量设置成这样,因为这样在测量尺寸时只需要测量一次。如果设置成wrap-content那么在对父布局进行测量时会先测量其子View的尺寸,测量过程中子View的尺寸可能会动态变化,这样就造成了父布局的尺寸需要多次被测量,影响性能

4.把通用的布局抽出来通过include包含到指定的布局。这样可以实现布局的复用,既可以提高布局性能,也有利于以后的维护。用include时候需要注意,如果想重写被包含布局的layout属性必须在include标签内重写layout_width和layout_height属性,这样重写其它layout属性才有效。

5.如果include标签的外层不是根布局的话,那么被包含布局需要用merge实现,这样可以减少一层嵌套。用merge实现的布局被include包含后就不能重写其layout属性了(因为merge节点不是一个布局),所以这时候你想对整个被包含布局进行操作(比如设置间距),那么只能在include标签外层包一层布局(比如RelativeLayout),通过该布局来对被包含布局进行整体操作

6.通过ViewStub在需要时加载布局。如果用设置显示隐藏的方式在需要时加载布局,其实就算隐藏了也是会被加载的。通过ViewStub就可以真正实现需要时才加载布局。

0 0
原创粉丝点击