如何在隐藏线性布局时释放屏幕中的空间



我想在我的Android应用程序中显示/隐藏窗口的一部分。

我使用这个代码:

LinearLayout l = (LinearLayout)findViewById(R.id.layoutToRemove);
        if (on) {
            l.setVisibility(View.INVISIBLE);
        } else {
            l.setVisibility(View.VISIBLE);
        }

现在发生的情况是LinearLayout从窗口中删除,但它使用的空间没有释放(因此UI的其余部分位于原始位置)

现在,我想实现的是释放空间,当LinearLayout再次可见时,它将再次发生。

我该怎么做?

使用View.GONE而不是View.INVISIBLE

GONE的文件http://developer.android.com/reference/android/view/View.html#GONE表示

此视图是不可见的,不占用任何布局空间目的。

与上的INVISIBLE文档相比http://developer.android.com/reference/android/view/View.html#INVISIBLE上面写着

此视图不可见,但仍占用布局空间目的。

最新更新