《Android GridLayout简介,以计算器为例》
Android GridLayout默认从左往右水平布局元素。可以通过设置属性:android:orientation=,控制子元素布局的方向为水平还是垂直。
GridLayout的属性 android:layout_row 和 android:layout_column 设定常数值则指定GridLayout显示的行列数。
设定 android:layout_rowSpan 或者 android:layout_columnSpan 常数值,且同时设定android:layout_gravity="fill",则该元素将跨界占满指定的行列。
以一个简单的计算器布局为例加以说明,该计算器仅仅通过一个布局文件即可实现,下面就是一个使用Android GridLayout布局实现的计算器效果图如下:
上面用Android GridLayout实现的计算器效果图XML布局文件完整代码:
<?xml version="1.0" encoding="utf-8"?>
<GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:columnCount="4"
android:orientation="horizontal"
android:rowCount="5" >
<Button
android:id="@+id/one"
android:text="1" />
<Button
android:id="@+id/two"
android:text="2" />
<Button
android:id="@+id/three"
android:text="3" />
<Button
android:id="@+id/devide"
android:text="/" />
<Button
android:id="@+id/four"
android:text="4" />
<Button
android:id="@+id/five"
android:text="5" />
<Button
android:id="@+id/six"
android:text="6" />
<Button
android:id="@+id/multiply"
android:text="×" />
<Button
android:id="@+id/seven"
android:text="7" />
<Button
android:id="@+id/eight"
android:text="8" />
<Button
android:id="@+id/nine"
android:text="9" />
<Button
android:id="@+id/minus"
android:text="-" />
<Button
android:id="@+id/zero"
android:layout_columnSpan="2"
android:layout_gravity="fill"
android:text="0" />
<Button
android:id="@+id/point"
android:text="." />
<Button
android:id="@+id/plus"
android:layout_gravity="fill"
android:layout_rowSpan="2"
android:text="+" />
<Button
android:id="@+id/equal"
android:layout_columnSpan="3"
android:layout_gravity="fill"
android:text="=" />
</GridLayout>