网格布局: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" >        <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>

更多相关文章

  1. 完美解决Android中AVD模拟器启动慢(卡在Android启动界面)等问题
  2. Android5.X之百分比布局库(percent-support-lib) 解析与扩展
  3. Android:控件布局(表格布局)TableLayout
  4. [转]android学习总结----Activity view
  5. LinearLayout源码分析
  6. 【Android(安卓)界面效果18】Android软件开发之常用系统控件界面
  7. android之AdapterView及其子类的学习
  8. Android(安卓)RecyclerView刷新和加载
  9. android 更新界面视图 Handler和runOnUiThread

随机推荐

  1. 【Android(安卓)4.0】conversion to dalv
  2. Android(安卓)Studio 项目添加或导入第三
  3. Android进程-zygote进程
  4. cocos2d-x 编译到android studio的坑
  5. Android(安卓)apk 多渠道打包
  6. LogUtils:一个强大的Android日志管理器,支
  7. Android中的OnMeasure及OnLayout
  8. Android(安卓)OkHttp(1)
  9. AS升级到3.1.1之后【ZXingScannerView 二
  10. android:ContentProvider