LinearLayout是线性布局,通过orientation可以控制组件水平或竖直排列,默认是水平排列,每一个子元素都位于前一个元素之后,这样形成单行N列,或者单列N行的布局,如果想要N行N列,可以嵌套使用LinearLayout。
RelativeLayout是相对布局,相对布局容器内子组件的位置总是相对于兄弟组件、父容器来决定的,常用的属性有layout_above 位于引用组件的上方,layout_below 位于引用组件的下方,layout_toLeftOf位于引用组件的左方,layout_toRightOf 位于引用组件的右方,layout_alignParentTop(Bottom、Left 、Right) 是否对齐父组件的顶部(底部、左边、右边),layout_alignTop(Bottom、Left 、Right)与引用组件的上(下、左、右)边界对齐。
TableLayout是表格布局,通过添加TableRow和在TableRow中添加其他组件来控制表格的行数和列数,每添加一个TableRow,TableLayout就多出一行,TableRow也是容器,在TableRow中每添加一个子组件这一行就增加一列。TableLayout继承了LinearLayout,所以TableLayout支持LinearLayout所支持的全部属性,
FrameLayout是帧布局,所有的控件都不能指定位置,根据layout_gravity属性放置,如果没有设置layout_gravity属性,从左上角对齐依次叠加,后面的控件直接覆盖在前面的控件之上。
AbsoluteLayout是绝对布局,使用layout_x和layout_y属性限定控件的位置,左上角坐标为(0,0),各控件位置可以重叠。
参考链接:
http://blog.csdn.net/dazlly/article/details/7860125
http://blog.csdn.net/shakespeare001/article/details/7843460