0

我有 2 个表格布局。我想隐藏第二个布局并将第三个布局移动到第二个位置。

我隐藏了第二个布局,但不知道如何将第三个布局移动到第二个位置

            TableLayout i=(TableLayout)findViewById(R.id.table2);
    TableLayout i2=(TableLayout)findViewById(R.id.table3);
    TableLayout i3=(TableLayout)findViewById(R.id.table4);
    i.setVisibility(View.GONE);
    i2.setVisibility(View.GONE);
    i3.setVisibility(View.GONE);
    TableLayout i5=(TableLayout)findViewById(R.id.table5);
             i5.// Now i want to add this layout below to table layout R.id.table1 (the first table layout in this section)                 
4

3 回答 3

0

使用view.removeView(id)表格布局然后当你想使用view.addView(id)

于 2013-05-08T07:38:12.453 回答
0

尝试设置

i2.setVisibility(View.INVISIBLE);
于 2013-05-08T07:41:08.887 回答
0

你可以像你说的那样使用RelativeLayout,所以制作一个垂直方向的子LinearLayout,然后添加你想要添加的所有表格布局。

如果要在运行时在第一个位置添加 tableLayout,则鞠躬,然后执行以下操作:

linearLayout.removeAllViews();

然后添加所需的 TableLayout(here, i5),然后添加剩余的布局。

编辑:您的代码:

TableLayout i=(TableLayout)findViewById(R.id.table2);
TableLayout i2=(TableLayout)findViewById(R.id.table3);
TableLayout i3=(TableLayout)findViewById(R.id.table4);
i.setVisibility(View.GONE);
i2.setVisibility(View.GONE);
i3.setVisibility(View.GONE);
TableLayout i5=(TableLayout)findViewById(R.id.table5);
         i5.// Now i want to add this layout below to table layout R.id.table1 (the first table layout in this section)  

你走对了吗,因为我认为你的代码应该是这样的:

TableLayout i=(TableLayout)findViewById(R.id.table1);
TableLayout i2=(TableLayout)findViewById(R.id.table2);
TableLayout i3=(TableLayout)findViewById(R.id.table3);
i.setVisibility(View.GONE);
i2.setVisibility(View.GONE);
i3.setVisibility(View.GONE);
TableLayout i5=(TableLayout)findViewById(R.id.table5);
         i5.// Now i want to add this layout below to table layout R.id.table1 (the first table layout in this section)  

我建议这样做是因为您i5在上述代码之后的评论部分。

于 2013-05-08T07:58:53.467 回答