Android中五种布局样式
1、LinearLayout(线性布局) 2、RelativeLayout(相对布局) 3、TableLayout(表格布局) 用GridView代替 4、AbsoluteLayout(绝对布局) 少用 5、FrameLayout(帧布局) 控件叠加,比如播放视频暂停时最上层有个控件,或者屏幕正中心显示一个圆形进度条。
android布局原则: 尽量多使用LinearLayout和RelativeLayout,不要使用AbsoluteLayout;
在布局层次一样的情况下,建议使用LinearLayout代替RelativeLayout;
将可复用的组件抽取出来并通过include标签使用;
使用merge合并UI布局:布局根节点是FrameLayout且不需要设置background或padding等属性,可以用merge代替;某布局作为子布局被其他布局 include时,使用merge当作布局的顶节点,这样被引入后顶节点会被自动忽略。
使用ViewStub惰性加载:ViewSyub是一个轻量级的View,它是一个看不见的,不占布局位置,占用资源非常小的控件,可以在调用ViewStub.inflate()的时候显示出来,ViewStub只能inflate一次,之后ViewStub对象就会被置为空。虽然View的初始化不可见可以用View.GONE,但是这种耗费资源一些。