【问题标题】:Android: hide / show table rowsAndroid:隐藏/显示表格行
【发布时间】:2015-03-02 23:07:33
【问题描述】:

我有一个表格布局(带有不动产过滤参数的表格)。当用户从Spinner 列表(公寓、房屋、土地等)中选择不动产类型时,我需要隐藏/显示带有过滤参数的行。可能吗? TableLayout 对此有好处还是使用 LinearLayout 会更好?什么时候最好使用 TableLayout 而不是 LinearLayout? 我有一个水平形式的简单表格,如下所示:

-------------------------
field name: [input field]
-------------------------
field name: [input field]
-------------------------

我已经发现我可以删除/添加行了:

tableLayout.addView(row);
tableLayout.removeView(row);

这是唯一的方法吗?我可以隐藏/显示行而不删除它们吗?

【问题讨论】:

  • 我在一个应用程序中做了您所要求的确切事情。假设 TableRow 有一个 id,并且为它分配了一个变量 (findViewById()),那么 .setVisibility(View.GONE) 或 (View.VISIBLE) 就可以了。没有重新定位。
  • @DavidM - 我刚刚尝试过,是的,我现在可以隐藏行,但行之间存在间隙。不可见的行不会折叠,它们会留下空白。我该如何解决?
  • @DavidM 如果您有答案,请将其发布为答案(不是评论),以便我接受
  • 嗯。我没有在我的应用程序中注意到这一点。你能发布布局吗?
  • @DavidM 哦,对不起!这是我的错误——我使用了View.INVISIBLE 而不是View.GONE。现在没有空隙了!谢谢!你会发布答案吗?

标签: android tablelayout tablerow


【解决方案1】:

您可以使用<variable>.setVisible(View.GONE)<variable>.setVisible(View.VISIBLE) 隐藏和显示 tableRow 变量。无需重新定位行。

祝你好运!

【讨论】:

    猜你喜欢
    • 2016-12-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多