13

我的视图中有项目,这些项目在点击时显示,但在活动开始时不显示。现在一切正常,但是当我使用图形布局工具时,我看到了这些项目,这使得使用它变得更加困难。

意思是,我有一个带有项目的 ListView,我看到这些项目位于所有内容之上。

我怎样才能隐藏这些元素?以编程方式设置可见性没有帮助。我应该做一些事情,比如将 alpha 设置为 0,然后添加它而不是让项目不可见吗?似乎是一个愚蠢的想法,我必须有一些选择。

帮助任何人?

谢谢,埃里克

4

2 回答 2

37

为什么不将可见性设置为 'gone': android:visibility="gone"?这将防止布局项目出现占用布局中的空间。

或者,如果视图层次结构中的某些元素可能根本不会向用户显示,则可以使用ViewStubs 在运行时“延迟”加载它们。AViewStub只是其他视图(层次结构)的占位符,它本身是空的且大小为零。这是将视图层次结构分离为默认和可选元素的好方法,并且可以在运行时显着降低视图层次结构的复杂性。

于 2012-05-01T19:30:08.443 回答
13

如果您想以编程方式/有条件地隐藏元素,而不是像上面建议的那样在布局 XML 中隐藏元素并且设置可见性不起作用,也许您的语法错误?这是您以编程方式隐藏元素的方式:

element.setVisibility(View.GONE);
于 2013-07-15T15:11:07.193 回答