网格布局由GridLayout代表,它是Android4.0新增的布局管理器,因此需要在Android4.0之后的版本中才能使用该布局管理器。如果希望在更早的Android平台上使用该布局管理器,则需要导入相应的支撑库。
GridLayout提供了setRowCount(int)和setColumnCount(int)方法来控制该网格的行数量和列数量。
xml属性 | 相关方法 | 说明 |
android:alignmentMode | setAlignmentMode(int) | 设置改布局管理器采用的对齐方式 |
android:columnCount | setColumnCount(int) | 设置该网格的列数量 |
android:columnOrderPreserved | setColumnOrderPreserved(boolean) | 设置该网格容器是否保留列序号 |
android:rowCount | setRowCount(int) | 设置该网格的行数量 |
android:rowOrderPreserved | setRowOrderPreserved(boolean) | 设置该网格容器是否保留行序号 |
android:useDefaultMargins | setUseDefaultMargins(boolean) | 设置该布局管理器是否使用默认的页边距 |
为了控制GridLayout布局管理器中各子组件的布局分布,GridLayout提供了一个内部类:GridLayout.LayoutParams,该类提供了大量的xml属性来控制GridLayout布局管理器中子组件的布局分布。
xml属性 | 相关方法 | 说明 |
android:layout_column | 设置该子组件在GridLayout的第几列 | |
android:layout_columnSpan | 设置该子组件在GridLayout横向上跨几列 | |
android:layout_gravity | setGravity(int) | 设置该子组件采用何种方式占据该网格的空间 |
android:layout_row | 设置该子组件在GridLayout的第几行 | |
android:layout_rowSpan | 设置该子组件在GridLayout纵向上跨几行 |