1. 布局优化之include
在开发中可能因为布局层级过多导致UI性能差。
<include layout="@layout/titlebar"/>
注意事项:
- 使用@layout/ 属性对布局进行引用、
- 在include 定义了@+id/ 属性则会覆盖layout内部最外层布局id
- 在include 中所有的Android:layout_Padding 属性都是有效的。 前提是需要定义 include的宽高
2. ViewStub
注
- ViewStub目前有个缺陷就是还不支持 <merge /> 标签。
- 当调用inflate()函数的时候,ViewStub被引用的资源替代,并且返回引用的view。
3. Merge 减少布局层级
注意事项
- 只可以作为xml layout的根节点。
- 当需要扩充的xml layout本身是由merge作为根节点的话,需要将被导入的xml layout置于 viewGroup中,同时需要设置attachToRoot为True