1
因此,我有一个TableLayout在XML中声明,第一行中有2列,第二行中有4列。更改Android TableLayout列范围
--------- ---------
| | |
| A | B |
| | |
--------- ---------
| | | | |
| | | | |
--------- ---------
现在我想要动态地改变所述第二列的列跨度(山口。B)在第一行中以跨越而不是两个整个4列,并且所述第一柱(柱A)至消失,并能切换回两列状态。该表格的布局的第二状态从而将是这样:
-------------------
| |
| B |
| |
--------- ---------
| | | | |
| | | | |
--------- ---------
最初,A和B两者的以XML的创建,和加载后调整尺寸并具有余量加入:
TableRow.LayoutParams bLp = new TableRow.LayoutParams(size, size);
bLp.setMargins(margin, 0, 0, margin);
bLp.span = 2;
b.setLayoutParams(bLp);
但是,如果我试图更改第二列的跨度和隐藏的第一个,唯一变化的是第二列向左滑动
a.setVisibility(View.GONE);
TableRow.LayoutParams bLp = (TableRow.LayoutParams) b.getLayoutParams();
bLp.span = 4;
b.setLayoutParams(bLp);
更改第二列的宽度,以MATCH_PARENT没有按”牛逼于事无补,但作为TableRow.LayoutParams Android的医生说,宽度不考虑在所有:
这组布局参数强制每个孩子的宽度是MATCH_PARENT和高度每个孩子都是WRAP_CONTENT,但只限于未指定高度。
有没有办法实现我想用TableLayouts做什么?
由于