---恢复内容开始---
今天主要是学习了Android的布局器LinearLayout和TableLayout。
android的UI方式采用的是设计模式中的组合模式,一个基类View,还有其他组件是叶子,而继承自View的ViewGraoup是容器。
android提供的布局器都继承于ViewGroup,都是一种容器,其中可以容纳其他组件或者其他布局器。

LinearLayout 线性布局器
它将容器中的组件(包含在其中的其他布局器也可以看做一个组件)一个接一个的排列,可以横向排列(通过设置android:orientation),也可以竖向排列。LinearLayout不会换行,多出来的部分不会显示出来。
LinearLayout支持的XML属性
android:gravity 表示排列的对齐方式,支持top,bottom,left,right,center_vertical,fill_vertical,center_horizontal,
fill_horizontal,center,fill,clip_vertical,clip_horizontal,可以同时指定几种对齐方式,多种对齐方式用
|隔开,但|前后都不要有空格
android:orientation 表示组件排列的方向,有horizontal和vertical两种属性,表示水平和垂直
LinearLayout支持的方法
setGravity(int)
setOrientation(int) 有HORIZONTAL和VERTICAL两种常量,都是静态变量,可以采用LinearLayout.HORIZONTAL方式调用
TableLayout 表格布局
TableLayout继承自LinearLayout,拥有LinearLayout的所有属性,可以向其中添加TableRow或者组件,每添加一个TableRow就是一个表格行,TableRow也是一个容器,可以向其中添加组件,没添加一个组件就增加一列。如果直接向TableLayout中添加组件,则组件占用一行。
TableLayout中的每一个单元格有3种方式
Shrinkable:可收缩的
Stretchable:可拉伸的
Collapseable:可隐藏的
TableLayout支持的XML属性
android:collapseCloumns 隐藏列,多个列用逗号隔开
android:shrinkCloumns 收缩列,多个列用逗号隔开
android:stretchCloumns 拉伸列,多个列用逗号隔开
TableLayout支持的方法
setColumnCollapsed(int,boolean) 隐藏指定列
setShrinkAllColumns(boolean) 收缩所有列
setStretchAllColumns(boolean) 拉伸所有列
浙公网安备 33010602011771号