API 25 (Android 7.1.1 API) widget.GridLayout——属性分析

Android API 25 (Android 7.1.1 API)


GridLayout

public class GridLayout

extends ViewGroup

Added in API level 14

 

java.lang.Object

   ↳android.view.View

    ↳android.view.ViewGroup

     ↳android.widget.GridLayout

 

【概述】

  该布局把子视图存放在一个矩形网格中。

 

网格是由被无数虚细线分割成多个单元格的可视区域组成。整个API中,网格线网格索引引用。一个N列的网格在运行中包含0NN+1网格索引,不管怎么配置GridLayout, 网格索引0固定网格容器的前边缘网络索引N固定容器的后边缘(考虑填充)。

 

【行和列的规格】

子元素占据一个或多个连续单元格,由它们的rowSpeccolumnSpec布局参数定义。每个规范定义要被占用的行或列的集合;以及如何在所得到的细胞群中比对儿童。虽然单元格在GridLayout中通常不重叠,但GridLayout不会阻止定义的孩子占用相同的单元格或单元格组。然而,在这种情况下,不能保证在布局操作完成之后孩子本身不会重叠

 

【默认单元格分配】

如果子节点未指定其希望占用的单元格的行和列索引,GridLayout将使用:orientationrowCountcolumnCount属性自动分配单元格位置。

 

【空间】

子级之间的空间可以通过使用专用空间视图的实例或通过设置leftMargintopMarginrightMarginbottomMargin布局参数来指定。当设置了useDefaultMargins属性时,将根据平台的主要UI样式指南自动分配儿童的默认边距。如此定义的每个边缘可以通过对适当的布局参数的分配来独立地重写。默认值通常在组件之间产生合理的间隔,但是值可以在平台的不同版本之间改变。

 

【多余的空间分布】

API 21GridLayout的超额空间分布适应重量的原则。在没有指定权重的情况下,遵守先前的约定,并且如果它们的视图在它们的组中指定了某种形式的对齐,则将列和行视为灵活的。

视图的灵活性因此受到其对齐的影响,而对齐通常通过设置孩子的布局参数的gravity属性来定义。如果沿给定轴线定义weightalignment,则该部件在该方向上被认为是柔性的。如果没有设置weightalignment,则该组件被假定为不灵活。

同一行或列组中的多个组件被视为并行操作。这样的组只有在其中的所有组件都是灵活的时才是灵活的。位于公共边界两侧的行组和列组反而被认为是串行动作。由这两个元件制成的复合组是柔性的,如果其元件之一是柔性的。
为了使拉伸,确保其中的所有组件限定weightgravity。为了防止色谱伸展,请确保色谱中的某个组件未定义weightgravity
当灵活性的原理不提供完全消歧时

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值