【问题标题】:GridLayout vs TableLayout网格布局与表格布局
【发布时间】:2013-04-24 09:52:42
【问题描述】:

我不确定它们两者之间的区别是什么以及我应该将哪些用于我的目的?

我要做的是创建一个带有文本输入的自定义虚拟小键盘,并且可以动态更改其内容以具有日期选择器。

所以我需要一个布局系统,它可以在其中支持许多不同大小的单元格。

哪个更适合我的需求,有什么区别?

【问题讨论】:

标签: android tablelayout grid-layout


【解决方案1】:

根据我的经验,GridLayoutTableLayout 都给了我相同的结果。他们似乎都在拉伸列以适应最宽的子元素。两者都不会在单元格周围提供网格线或边框。

来自GridLayout的官方文档:

行和列规范 子项占用一个或多个连续单元格,由它们的 rowSpec 和 columnSpec 布局参数定义。每个规范都定义了要占用的行或列的集合;以及子级应如何在生成的单元格组中对齐。尽管单元格通常不会在 GridLayout 中重叠,但 GridLayout 不会阻止将子项定义为占用相同的单元格或单元格组。但是,在这种情况下,不能保证在布局操作完成后子级自身不会重叠。

来自TableLayout

表格的列数与单元格最多的行一样多。表格可以将单元格留空。单元格可以跨列,就像在 HTML 中一样。

所以在我看来,GridLayout 更通用,可能是您正在寻找的。​​p>

【讨论】: