我的视图中有项目会在点击时显示,并且不会显示在该活动的开头。 现在一切正常,但是当我使用图形布局工具时,我会看到这些项目,这使得使用它更加困难。
意思是,我有一个带有项目的ListView,我会在所有内容之上看到这些项目。
我如何隐藏这些元素?设置能见度programaticlly没有帮助。 我应该做一些事情,比如将alpha设置为0,然后添加它而不是使项目不可见吗? 看起来像一个愚蠢的想法,必须有一些我缺少的选项。
帮助任何人?
谢谢, 埃里克
答案 0 :(得分:26)
为什么不将可见性设置为“已消失”:android:visibility="gone"
?这样可以防止布局项显示和占用布局中的空间。
或者,如果视图层次结构中的某些元素可能永远不会显示给用户,则可以使用ViewStub
来“延迟”在运行时加载它们。 ViewStub
只是一个其他视图(层次结构)的占位符,并且是空的并且自身为零。这是将视图层次结构分离为默认和可选元素的好方法,并且可以显着降低运行时视图层次结构的复杂性。
答案 1 :(得分:7)
如果你想以编程方式/有条件地隐藏元素而不是如上所述在布局XML中隐藏元素并且设置可见性不起作用,那么你的语法可能是错误的?这是您以编程方式隐藏元素的方式:
element.setVisibility(View.GONE);