Android布局优化方法
2020-08-29 本文已影响0人
enchanted1107
1.减少层级
层级越少,测量和绘制的时间就越短,布局层次深会增加内存消耗,甚至会引起栈溢出等问题,通常减少层级有一下两个常用方案:
●合理使用RelativeLayout和LinearLayout.
●合理使用Merge
使用Merge使用的场合主要有以下两处:
●在自定义View中使用,父元素尽量是FrameLayout或者LinearLayout.
●在activity中整体布局,根元素需要是FrameLayout.
2.提高显示速度
使用ViewStub,ViewStub是一个轻量级的View,占用资源非常小的视图对象,ViewStub只能加载一次,之后ViewStub对象会被置空,ViewStub只能用来加载一个布局文件,而不是某个具体的View,ViewStub中不能嵌套Merge标签。
3.布局复用
使用include标签
4.避免过度绘制
使用Android自带的一些主题时,activity往往会设置一个默认背景,这个背景由DecorView持有。当一个自定义布局有一个全屏背景时候,DecorView的背景此时对我们来说是无用的,但是他会产生一次Overdraw.因此没必要的话,也可以移除:
this.getWindow().setBackgroundDrawable(null);