零、Android布局渲染原理
1、setContentView方法设置布局资源。
2、布局加载的过程中使用到了一个布局加载器:LayoutInflater。
3、Android去解析和展示一个布局是需要消耗时间的,布局嵌套的越多,那么解析起来就越耗时,性能也就越差,因此我们在编写布局文件时应该让嵌套的层数越少越好。
一、重用布局文件
Android系统中提供了非常多的控件,这让我们在编写布局的时候可以很轻松。但是有些时候我们可能需要反复利用某个已经写好的布局,如果你总是使用复制粘贴的方式来进行布局重用,这显然是一种很笨的做法。因此Android考虑到了布局重用的重要性,提供了<include>和<merge>这两个非常有用的标签。
include 标签
include标签可以允许在一个布局当中引入另外一个布局。
比如说程序的所有界面都有一个公共的部分,这个时候最好的做法就是将这个公共的部分提取到一个独立的布局文件当中,然后在每个界面的布局文件当中来引用这个公共的布局。
举例:所有页面的通用标题栏
merge标签
1、include标签的缺点:非常容易造成多余的布局嵌套。
View Hierarchy工具:在实际的开发过程中,我们可以通过来查看自己页面布局的一个复杂度。
2、解决方案merge标签是作为include标签的一种辅助扩展进行使用。它的主要作用是为了防止在引用布局文件时产生多余的布局嵌套。
二、布局按需加载
某个布局当中的元素非常多,但并不是所有元素都一