Anroid性能优化(一):布局优化
2018-02-08 本文已影响15人
将行陌路
Android 布局优化建议:
1、合理选择控件容器
- LinearyLayout 易用,效率高,表达能力有限。RelativeLayout 复杂,表达能力强,复杂界面建议用RelativeLayout;
- ConstraintLayout可以进一步减少布局层次,可学习使用
2、 去掉window的默认背景
- 当我们使用了Android自带的一些主题时,window会被默认添加一个纯色的背景,这个背景是被DecorView持有的。当我们自定义布局时又添加了一张背景图或者设置背景色,那么DecorView的background此时对我们来说是无用的,但是它会产生一次Overdraw,带来回执性能损耗。
3、去掉其他不必要的背景
- 过度绘制的主要原因,减少背景叠加,能不用背景绝对不用。子控件尽量复用父控件的背景。
4、ViewStub
- 一句话总结:高效占位符。
5、Merge
- 不解释,减少一个层级。复杂布局效率提升杠杠的。常配合include标签使用。
6、慎用Alpha
- 做Alpha转化就需要对当前View绘制两遍,耗时会翻倍,所以Alpha还是慎用。
7、避免过度设计
- 在复杂的业务逻辑与简单易用的界面展现中做一个平衡。