您的位置:首页 > 移动开发 > Android开发

Android实现计算器布局(四种布局方式)之GridLayout网格布局

2017-03-31 19:47 711 查看

网格布局:GridLayout

其他三种布局:

RelativeLayout相对布局实现计算器界面布局

LinearLayout线性布局实现计算器界面布局

TableLayout表格布局实现计算器界面布局

网格布局实现计算器界面布局非常简单,实现跨行跨列功能主要用到:

layout_columnSpan属性和layout_rowSpan

如:

android:layout_columnSpan=”3”

android:layout_gravity=”fill”

设置为fill能让控件占满所跨的行或列

界面效果:



outline视图



布局源码:

<?xml version="1.0" encoding="utf-8"?>
<GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:columnCount="6"
android:orientation="vertical"
android:rowCount="9" >

<!-- n行n列 -->

<Button
android:id="@+id/button1"
android:layout_column="0"
android:layout_gravity="left"
android:layout_row="0"
android:text="1" />

<Button
android:id="@+id/button4"
android:layout_column="0"
android:layout_gravity="right|bottom"
android:layout_row="1"
android:text="4" />

<Button
android:id="@+id/button7"
android:layout_column="0"
android:layout_gravity="left|bottom"
android:layout_row="2"
android:text="7" />

<Button
android:id="@+id/button13"
android:layout_column="0"
android:layout_columnSpan="2"
android:layout_gravity="fill"
android:layout_row="3"
android:text="0" />

<Button
android:id="@+id/button14"
android:layout_column="0"
android:layout_columnSpan="3"
android:layout_gravity="fill"
android:layout_row="4"
android:text="+" />

<Button
android:id="@+id/button2"
android:layout_column="1"
android:layout_gravity="left|bottom"
android:layout_row="0"
android:text="2" />

<Button
android:id="@+id/button5"
android:layout_column="1"
android:layout_gravity="left|bottom"
android:layout_row="1"
android:text="5" />

<Button
android:id="@+id/button8"
android:layout_column="1"
android:layout_gravity="right"
android:layout_row="2"
android:text="8" />

<Button
android:id="@+id/button3"
android:layout_column="2"
android:layout_gravity="left|bottom"
android:layout_row="0"
android:text="3" />

<Button
android:id="@+id/button6"
android:layout_column="2"
android:layout_gravity="left"
android:layout_row="1"
android:text="6" />

<Button
android:id="@+id/button9"
android:layout_column="2"
android:layout_gravity="left"
android:layout_row="2"
android:text="9" />

<Button
android:id="@+id/button17"
android:layout_column="2"
android:layout_gravity="left"
android:layout_row="3"
android:text="." />

<Button
android:id="@+id/button16"
android:layout_column="3"
android:layout_columnSpan="2"
android:layout_gravity="left"
android:layout_row="0"
android:text="/" />

<Button
android:id="@+id/button10"
android:layout_column="3"
android:layout_columnSpan="2"
android:layout_gravity="left"
android:layout_row="1"
android:text="*" />

<Button
android:id="@+id/button11"
android:layout_column="4"
android:layout_gravity="left|bottom"
android:layout_row="2"
android:text="-" />

<Button
android:id="@+id/button12"
android:layout_column="4"
android:layout_gravity="fill"
android:layout_row="3"
android:layout_rowSpan="2"
android:text="=" />

<Space
android:layout_width="1dp"
android:layout_height="32dp"
android:layout_column="0"
android:layout_row="2" />

<Space
android:layout_width="63dp"
android:layout_height="15dp"
android:layout_column="5"
android:layout_row="2" />

<Space
android:layout_width="100dp"
android:layout_height="220dp"
android:layout_row="7" />

<TextView
android:id="@+id/textView1"
android:layout_column="0"
android:layout_columnSpan="5"
android:layout_gravity="fill"
android:layout_row="6"
android:text="0"
android:textAppearance="?android:attr/textAppearanceLarge" />

</GridLayout>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: