GridLayout(网格布局)

今天要介绍的布局是Android 4.0以后引入的一个新的布局,和前面所学的TableLayout(表格布局) 有点类似,不过他有很多前者没有的东西,也更加好用,

  • 可以自己设置布局中组件的排列方式
  • 可以自定义网格布局有多少行,多少列
  • 可以直接设置组件位于某行某列
  • 可以设置组件横跨几行或者几列

另外,除了上述内容外,本节还会给大家使用gridLayout时会遇到的问题,以及如何解决低版本 sdk如何使用GridLayout的方法!接下来就开始本节的课程吧!


1.相关属性总结图


2.使用实例:计算器布局的实现:

运行效果图:

实现代码:

<GridLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:id="@+id/GridLayout1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:columnCount="4"android:orientation="horizontal"android:rowCount="6" ><TextViewandroid:layout_columnSpan="4"android:layout_gravity="fill"android:layout_marginLeft="5dp"android:layout_marginRight="5dp"android:background="#FFCCCC"android:text="0"android:textSize="50sp" /><Buttonandroid:layout_columnSpan="2"android:layout_gravity="fill"android:text="回退" /><Buttonandroid:layout_columnSpan="2"android:layout_gravity="fill"android:text="清空" /><Button android:text="+" /><Button android:text="1" /><Button android:text="2" /><Button android:text="3" /><Button android:text="-" /><Button android:text="4" /><Button android:text="5" /><Button android:text="6" /><Button android:text="*" /><Button android:text="7" /><Button android:text="8" /><Button android:text="9" /><Button android:text="/" /><Buttonandroid:layout_width="wrap_content"android:text="." /><Button android:text="0" /><Button android:text="=" /></GridLayout> 

代码解析: 代码很简单,只是回退与清楚按钮横跨两列,而其他的都是直接添加的,默认每个组件都是 占一行一列,另外还有一点要注意的: 我们通过:android:layout_rowSpanandroid:layout_columnSpan设置了组件横跨 多行或者多列的话,如果你要让组件填满横越过的行或列的话,需要添加下面这个属性: android:layout_gravity = "fill"!!!就像这个计算机显示数字的部分!


3.用法归纳:

①GridLayout使用虚细线将布局划分为行,列和单元格,同时也支持在行,列上进行交错排列 ②使用流程:

  • step 1:先定义组件的对其方式 android:orientation 水平或者竖直,设置多少行与多少列
  • step 2:设置组件所在的行或者列,记得是从0开始算的,不设置默认每个组件占一行一列
  • step 3:设置组件横跨几行或者几列;设置完毕后,需要在设置一个填充:android:layout_gravity = "fill"

4.使用GridLayout要注意的地方:

因为GirdLayout是4.0后才推出的,所以minSDK版本要改为14或者以上的版本, 不然写布局代码的时候,这玩意就会莫名其妙地出错,说找不到这个GridLayout, 当然,如果你要低版本兼容的话,就要看下面的内容了!


5.低版本sdk如何使用GridLayout:

解决方法很简单:只需要导入v7包的gridlayout包即可! v7包一般在sdk下的:sdk\extras\android\support\v7\gridlayout目录下 如果你没有的话,也可以到这里下载: gridlayout_v7_jay.rar 但是用的时候,标签却是这样写的:

<android.support.v7.widget.GridLayout>`

Android 应用开发(50)---GridLayout(网格布局)相关推荐

  1. Android应用开发之GridLayout(网格布局)

    GridLayout 网格布局是Android 4.0以后引入的一个新的布局. 它和前面所学的TableLayout(表格布局) 有点类似,不过有很多前者没有的东西,也更加好用. 特点: 可以自己设置 ...

  2. Android 应用开发(39)---GridLayout(网格布局)

    GridLayout(网格布局) 可以自己设置布局中组件的排列方式 可以自定义网格布局有多少行,多少列 可以直接设置组件位于某行某列 可以设置组件横跨几行或者几列 另外,除了上述内容外,本节还会给大家 ...

  3. android网格布局间距,Android布局之GridLayout网格布局

    网格布局标签是GridLayout.这个布局是android4.0新增的布局.这个布局只有4.0之后的版本才能使用. 不过新增了一些东东 ①跟LinearLayout(线性布局)一样,他可以设置容器中 ...

  4. Android GridLayout网格布局实现复古小米计算器

    Android GridLayout网格布局实现复古小米计算器 闲暇时间整理一些Android基础知识 首先看效果图 首先是一些配色: <color name="btnColor&qu ...

  5. 安卓APP_ 布局(5) —— GridLayout网格布局

    摘自:安卓APP_ 布局(5) -- GridLayout网格布局 作者:丶PURSUING 发布时间: 2021-04-12 00:08:31 网址:https://blog.csdn.net/we ...

  6. Java GUI(图形用户界面)-----GridLayout(网格布局管理器)详解

    GridLayout(网格布局管理器) 可以把容器分成n行m列大小相等的网格,每个网格放置一个组件,按照从左往右,从上往下的顺序依次添加,放置在Gird Layout布局管理器的组件将自动占据网格的整 ...

  7. 【Java AWT 图形界面编程】LayoutManager 布局管理器 ④ ( GridLayout 网格布局 | GridBagLayout 网格包布局 )

    文章目录 一.GridLayout 网格布局 二.GridLayout 构造函数 三.GridLayout 网格布局代码示例 四.GridBagLayout 网格包布局 一.GridLayout 网格 ...

  8. Java学习 布局管理器之GridLayout(网格布局)

    GridLayout( 网格布局) 具体请看 官方JavaApi: java.awt.GridLayout GridLayout 将容器切割为棋盘一样m行n列的网格,每个网格可以放置一个组件,添加到容 ...

  9. [疯狂Java笔记]AWT:GridLayout网格布局、GridBagLayout网格袋布局

    1. GridLayout--网格布局: 1) 网格顾名思义就是纵横分割大小一样的格网,每个格子都是矩形的,且大小相等,每个格子只能存放一个组件: 2) 构造器:最大的特点就是必须指定格网是几行几列的 ...

最新文章

  1. python语言程序设计基础第二版答案-python语言程序设计基础(第二版)第五章答案随笔...
  2. jenkins内存溢出的一些解决过程
  3. Hibernate Tomcat JNDI数据源配置(转)
  4. CG CTF RE ReadAsm2
  5. 21行代码AC——习题3-7 DNA序列(UVa-1368)_解题报告
  6. oracle数据库存储函数,Oracle数据库存储过程
  7. F-Secure Client Security 注册机
  8. tornado学习笔记day02-进阶与提升
  9. LabWindows/CVI入门之第二章:GUI开发
  10. matlab升压斩波电路,升压斩波电路课程设计汇总
  11. QQ动态表情包如何制作, 制作软件哪个好
  12. 三角形的几何公式大全_椰岛数学:初中数学公式大全(文末分享PDF)
  13. 中国卸扣市场趋势报告、技术动态创新及市场预测
  14. 高德地图---Poi搜索遇到的坑
  15. Spark基础(五)SparkSteaming
  16. 如何安装R以及RStudio?打开RStudio页面告诉你没安装R或者出现页面空白问题
  17. 深入理解MySQL(2):详谈索引结构
  18. 标号法(Dijkstra)求最短路 matlab
  19. 李善友:中国可以活3年以上的企业不到10%
  20. 最小二乘法直线拟合计算

热门文章

  1. 【K210】【MaixPy】一、Maix Dock入门之FPIOA和GPIO
  2. 【蓝桥杯嵌入式】【STM32】2_KEYBOARD(主循环扫描+外部中断)
  3. STM32F103系列实战之通用同步异步收发器(USART)
  4. 各种字符串Hash函数
  5. 滤波电容、去耦电容、旁路电容的作用
  6. 总结-最全linux工具的使用
  7. 生成jni的android.mk,Android Studio 3.5版本JNI生成SO文件详解
  8. 文字 竖排居中_微信朋友圈文字如何设置居中居右?
  9. Python 关键词触发的魔法方法
  10. R语言学习2-RMarkdown入门使用