GridLayout
来源:互联网 发布:时间序列数据集 编辑:程序博客网 时间:2024/06/06 00:36
GridLayout
GridLayout Attributes
android:alignmentMode
排列模式
- alignBounds 对齐边界
- alignMargins 对齐margin
如果子视图存在margin(边距), 可以控制是否对齐margin还是对齐子视图的边界. padding无效
android:columnCount
列数
android:rowCount
行数
超过行数或者列数就会自定换行
android:columnOrderPreserved
android:rowOrderPreserved
以上两个属性是控制行或者列的最大范围是否跟随最大值
android:orientation
方向
android:useDefaultMargins
默认边距
是否使用默认的边距(8dp), 默认false.
如果GridLayout不给子控件设置任何属性, 将默认从左到右/从上到下排列. 超过指定行列就换行
LayoutParams
GridLayout的每个网格都是一个Cell. 这些子控件时通过指定属性来指定其在网格中的位置
控制
默认不填写属性的情况下是依次排列行和列, 但是你可以通过手动指定行列控制排列(可以出现重叠)
android:layout_column 整数n,在哪一列开始显示n=[0, 最大列-1]
android:layout_row 指定从哪一行开始显示,规则同列数
示例:
如果我只指定android:layout_row="1"
, column依旧不变. 并且后面的子视图会根据Button2全部改变位置
如果我再指定android:layout_column="0"
如果同时修改为0, 会覆盖第一个子视图.
android:layout_row="0" android:layout_column="0"
跨度
即控制一个cell应该拥有多大的跨度(范围)
android:layout_columnSpan 整数k,指定元素横跨几列,需要注意保证n+k <= 最大列数
android:layout_rowSpan 纵向跨几行,规则同列
示例:
<Button android:layout_columnSpan="2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="1" />
对齐方式
android:layout_gravity
<Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="right" android:layout_columnSpan="2" android:text="1" />
权重
android:layout_columnWeight
android:layout_rowWeight
示例:
<Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_columnWeight="1" android:layout_columnSpan="2" android:text="2" />
示例
<GridLayout android:id="@+id/grid" android:layout_width="match_parent" android:layout_height="200dp" android:alignmentMode="alignMargins" android:columnCount="4" android:rowCount="4" > <Button android:layout_width="80dp" android:layout_height="50dp" /> <Button android:layout_width="100dp" android:layout_height="50dp" android:layout_column="2" android:layout_row="1" /> <Button android:layout_width="80dp" android:layout_height="50dp" /> <Button android:layout_width="80dp" android:layout_height="50dp" android:layout_column="1" android:layout_row="2" /> </GridLayout>
效果图
可以看出来通过子控件使用Column和Row属性可以指定其在网格中的位置
- GridLayout
- GridLayout
- gridlayout
- GridLayout
- GridLayout
- GridLayout
- gridlayout
- GridLayout
- GridLayout
- gridlayout
- GridLayout
- GridLayout
- GridLayout
- GridLayout
- GridLayout
- GridLayout
- SWT----GridLayout
- SWT GridLayout
- Retrofit
- Erasure Coding
- Git tag 给当前分支打标签
- Supervisord远程命令执行漏洞分析(CVE-2017-11610)
- 多边形寻路算法简单介绍
- GridLayout
- 2017秋招-技术岗-腾讯-CDG-提前批(2轮技术电面+1轮HR电面)
- VC显示jpg图像
- git 如何获取指定 tag 代码
- VMware Fusion配置Nat静态IP
- Java注解详解
- SPI机制的一次具体使用
- 挑战程序竞赛系列(33):POJ 2991 Crane
- [USACO3.3]亚瑟王的宫殿 Camelot