IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 移动开发 -> 网格布局管理器GridLayout -> 正文阅读

[移动开发]网格布局管理器GridLayout

介绍

网格布局管理器是在 Android 4.0 版本中提出的,使用 GridLayout 表示。在网格布局管理器中,屏幕被虚拟的细线划分成行、列和单元格,每个单元格放置一个组件,并且这个组件也可以跨行或跨列摆放,如图 3.24 所示。(网格布局管理器与表格布局有些类似,都可以以行、列的形式管理放入其中的组件,但是它们之间最大的不同就是网格布局管理器可以跨行显示组件,而表格布局管理器则不能)

?基本的语法格式如下:

<GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
属性列表
 >
</GridLayout >

XML属性

GridLayout 支持

XML属性描述
android:columnCount用于指定网格的最大列数
android:rowCount
用于指定网格的最大行数
android:orientation用于当没有为放入其中的组件分配行和列时,指定其排列方式。其属性值为horizontal 表示水平排列;属性值为 vertical 表示垂直排列
android:useDefaultMargins用于指定是否使用默认的边距,其属性值设置为 true 时,表示使用;属性值为false 时,表示不使用
android:alignmentMode用于指定该布局管理器采用的对齐模式,其属性值为 alignBounds 时,表示对齐边界;值为 alignMargins 时,表示对齐边距,默认值为 alignMargins
android:rowOrderPreserved用于设置行边界显示的顺序和行索引的顺序是否相同,其属性值为 true,表示相同,属性值为 false,表示不相同
android:columnOrderPreserved用于设置列边界显示的顺序和列索引的顺序是否相同,其属性值为 true,表示相同, 属性值为 false,表示不相同

?GridLayout 子组件支持

为了控制网格布局管理器中各子组件的布局分布,网格布局管理器提供了GridLayout.LayoutParams内部类,在该类中提供了如表

在网格布局管理器中,如果想让某个组件跨行或跨列,那么需要先通过android:layout_columnSpan或者android:layout_rowSpan设置跨越的行或列数,然后再设置其layout_gravity属性为fill,表示该组件填满跨越的行或者列

XML属性描述
android:layout_column用于指定该子组件位于网格的第几列
android:layout_columnSpan
用于指定该子组件横向跨几列(索引从 0 开始)
android:layout_columnWeight用于指定该子组件在水平方向上的权重,即该组件分配水平剩余空间的比例
android:layout_gravity
用于指定该子组件采用什么方式占据该网格的空间,其可选值有 top(放置在顶部)、bottom(放置在底部)、left(放置在左侧)、right(放置在右侧)、
center_vertical(垂直居中)、fill_vertical(垂直填满)、center_horizontal(水平居中)、fill_horizontal(水平填满)、center(放置在中间)、fill(填满)、clip_vertical(垂直剪切)、clip_horizontal(水平剪切)、start(放置在开始位置)、end(放置在结束位置)
android:layout_row用于指定该子组件位于网格的第几行(索引从 0 开始)
android:layout_rowSpan用于指定该子组件纵向跨几行
android:layout_rowWeight用于指定该子组件在垂直方向上的权重,即该组件分配垂直剩余空间的比例

例子

  移动开发 最新文章
Vue3装载axios和element-ui
android adb cmd
【xcode】Xcode常用快捷键与技巧
Android开发中的线程池使用
Java 和 Android 的 Base64
Android 测试文字编码格式
微信小程序支付
安卓权限记录
知乎之自动养号
【Android Jetpack】DataStore
上一篇文章      下一篇文章      查看所有文章
加:2021-08-14 14:11:29  更:2021-08-14 14:12:11 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/19 1:27:57-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码