Android GridLayout简介,以计算器为例



《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>

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。