Android 应用开发(50)---GridLayout(网格布局)
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_rowSpan与android: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(网格布局)相关推荐
- Android应用开发之GridLayout(网格布局)
GridLayout 网格布局是Android 4.0以后引入的一个新的布局. 它和前面所学的TableLayout(表格布局) 有点类似,不过有很多前者没有的东西,也更加好用. 特点: 可以自己设置 ...
- Android 应用开发(39)---GridLayout(网格布局)
GridLayout(网格布局) 可以自己设置布局中组件的排列方式 可以自定义网格布局有多少行,多少列 可以直接设置组件位于某行某列 可以设置组件横跨几行或者几列 另外,除了上述内容外,本节还会给大家 ...
- android网格布局间距,Android布局之GridLayout网格布局
网格布局标签是GridLayout.这个布局是android4.0新增的布局.这个布局只有4.0之后的版本才能使用. 不过新增了一些东东 ①跟LinearLayout(线性布局)一样,他可以设置容器中 ...
- Android GridLayout网格布局实现复古小米计算器
Android GridLayout网格布局实现复古小米计算器 闲暇时间整理一些Android基础知识 首先看效果图 首先是一些配色: <color name="btnColor&qu ...
- 安卓APP_ 布局(5) —— GridLayout网格布局
摘自:安卓APP_ 布局(5) -- GridLayout网格布局 作者:丶PURSUING 发布时间: 2021-04-12 00:08:31 网址:https://blog.csdn.net/we ...
- Java GUI(图形用户界面)-----GridLayout(网格布局管理器)详解
GridLayout(网格布局管理器) 可以把容器分成n行m列大小相等的网格,每个网格放置一个组件,按照从左往右,从上往下的顺序依次添加,放置在Gird Layout布局管理器的组件将自动占据网格的整 ...
- 【Java AWT 图形界面编程】LayoutManager 布局管理器 ④ ( GridLayout 网格布局 | GridBagLayout 网格包布局 )
文章目录 一.GridLayout 网格布局 二.GridLayout 构造函数 三.GridLayout 网格布局代码示例 四.GridBagLayout 网格包布局 一.GridLayout 网格 ...
- Java学习 布局管理器之GridLayout(网格布局)
GridLayout( 网格布局) 具体请看 官方JavaApi: java.awt.GridLayout GridLayout 将容器切割为棋盘一样m行n列的网格,每个网格可以放置一个组件,添加到容 ...
- [疯狂Java笔记]AWT:GridLayout网格布局、GridBagLayout网格袋布局
1. GridLayout--网格布局: 1) 网格顾名思义就是纵横分割大小一样的格网,每个格子都是矩形的,且大小相等,每个格子只能存放一个组件: 2) 构造器:最大的特点就是必须指定格网是几行几列的 ...
最新文章
- python语言程序设计基础第二版答案-python语言程序设计基础(第二版)第五章答案随笔...
- jenkins内存溢出的一些解决过程
- Hibernate Tomcat JNDI数据源配置(转)
- CG CTF RE ReadAsm2
- 21行代码AC——习题3-7 DNA序列(UVa-1368)_解题报告
- oracle数据库存储函数,Oracle数据库存储过程
- F-Secure Client Security 注册机
- tornado学习笔记day02-进阶与提升
- LabWindows/CVI入门之第二章:GUI开发
- matlab升压斩波电路,升压斩波电路课程设计汇总
- QQ动态表情包如何制作, 制作软件哪个好
- 三角形的几何公式大全_椰岛数学:初中数学公式大全(文末分享PDF)
- 中国卸扣市场趋势报告、技术动态创新及市场预测
- 高德地图---Poi搜索遇到的坑
- Spark基础(五)SparkSteaming
- 如何安装R以及RStudio?打开RStudio页面告诉你没安装R或者出现页面空白问题
- 深入理解MySQL(2):详谈索引结构
- 标号法(Dijkstra)求最短路 matlab
- 李善友:中国可以活3年以上的企业不到10%
- 最小二乘法直线拟合计算
热门文章
- 【K210】【MaixPy】一、Maix Dock入门之FPIOA和GPIO
- 【蓝桥杯嵌入式】【STM32】2_KEYBOARD(主循环扫描+外部中断)
- STM32F103系列实战之通用同步异步收发器(USART)
- 各种字符串Hash函数
- 滤波电容、去耦电容、旁路电容的作用
- 总结-最全linux工具的使用
- 生成jni的android.mk,Android Studio 3.5版本JNI生成SO文件详解
- 文字 竖排居中_微信朋友圈文字如何设置居中居右?
- Python 关键词触发的魔法方法
- R语言学习2-RMarkdown入门使用