GridLayout在API级别14中引入的GridLayout将它的子视图组织在风格里。但不要将它和GridView混淆。这种布局风格是动态创建的。不同于TableLayout,GridLyaout里面的子View控件可以跨行和列,在布局呈现中更为平顺和效率。事实上,GridLayout的子View控件告诉布局它们应该放在哪里。
xml内容如下
<?xml version="1.0" encoding="utf-8"?>
<GridLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/gridLayout1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:rowCount="4"
android:columnCount="4">
<TextView android:layout_width="150dp"
android:layout_height="50dp"
android:layout_column="0"
android:layout_columnSpan="3"
android:background="#ff0000"
android:gravity="center"
android:text="one"/>
<TextView android:layout_width="100dp"
android:layout_height="100dp"
android:layout_column="1"
android:layout_columnSpan="2"
android:layout_row="1"
android:layout_rowSpan="2"
android:background="#ff7700"
android:gravity="center"
android:text="two"/>
<TextView android:layout_width="50dp"
android:layout_height="50dp"
android:layout_column="2"
android:layout_row="3"
android:background="#00ff00"
android:gravity="center"
android:text="three"/>
<TextView android:layout_width="50dp"
android:layout_height="50dp"
android:layout_column="0"
android:layout_row="1"
android:background="#0000ff"
android:gravity="center"
android:text="four"/>
<TextView android:layout_width="50dp"
android:layout_height="200dp"
android:layout_column="3"
android:layout_row="0"
android:layout_rowSpan="4"
android:background="#0077ff"
android:gravity="center"
android:text="five"/>
</GridLayout>