网格布局由GridLayout代表,它是Android 4.0新增的布局管理器,因此需要在Android 4.0 之后的版本中才能使用该布局管理器。如果希望在更早的Android平台上使用该布局管理器,则需要导入响应的支撑库。GridLayout的作用类似于HTML中的table标签,它把整个容器划分成rows*columns个网格,每个网格可以放置一个组件。除此之外,也可以设置一个组件横跨多少列、一个组件纵跨多少行。 GridLayout提供了setRowCount(int)和setColumnCount(int)方法来控制该网格的行数量和列数量。 表2.11显示了GridLayout常用. Read More
相对布局由RelativeLayout代表,相对布局容器内子组件的位置总是相对兄弟组件、父容器来决定的,因此这种布局方式被称为相对布局。 如果A组件的位置是由B组件的位置来决定的,Android要求先定义B组件,再定义A组件。 RelativeLayout可支持如表2.8所示的两个XML属性。 表2.8 RelativeLayout的XML属性及相关方法说明XML属性相关方法说明android:gravitysetGraviy(int)设置该布局容器内各子组件的对齐方式android:ignoreGravtysetIgnoreGravity(int)设置哪个组件不受gravity属性的影响为. Read More
帧布局由FrameLayout所代表,FrameLayout直接继承了ViewGroup组件。 帧布局容器为每个加入其中的组件创建一个空白区域(称为一个帧),每个子组件占据一帧,这些帧都会根据gravity属性执行自动对齐。帧布局的效果是把组件一个一个地叠加在一起。表2.7显示了FrameLayout常用的XML属性及相关方法说明。 表2.7 FrameLayout的常用XML属性及相关方法XML属性相关方法 说 明android:foregroundsetForeground(Drawable)设置该帧布局容器的前景图像android:foregroundGravitysetForegro. Read More
表格布局由TableLayout所代表,TableLayout继承了LinearLayout,因此它的本质依然是线性布局管理器。表格布局采用行、列的形式来管理UI组件,TableLayout并不需要明确地声明包含多少行、多少列,而是通过添加TableRow、其他组件来控制表格的行数和列数。 每次向TableLayout中添加一个TableRow,该TableRow就是一个表格行,TableRow也是容器,因此它也可以不断地添加其他组件,每添加一个子组件该表格就增加一列。 如果直接向TableLayout中添加组件,那么这个组件将直接占用一行。 在表格布局中,列的宽度由该列中最宽的那个单元格决. Read More