Android:隐藏元素

use*_*551 0 android visibility element

想象一个Android应用程序,其中3个TextView采用线性布局,一个顺序位于另一个之下,然后是2个按钮.1按钮需要隐藏第二个文本视图,第二个按钮需要再次显示它.

唯一的要求是当第二个文本视图消失时,它不应占用任何空间,这意味着第三个文本视图应该在它消失时占据其空间.

我尝试使用INVISIBLE和VISIBLE设置,但是,空白占位符仍保留在第二个文本视图的位置.

我尝试使用GONE,它消除了空白区域,但是我无法再次显示第二个文本视图.

你知道实现这个目标的方法吗?

例:

////////////////////////////
initial state:
textview1
textview2
textview3
button1
button2

--> user pushes button1

new state:
textview1
textview3
button1
button2

--> user pushes button2

new state: initial state
////////////////////////////
Run Code Online (Sandbox Code Playgroud)

谢谢

Zoe*_*Zoe 6

两种方式:

XML

在您的XML文件中.如果您想拥有初始可见性

android:visibility="gone" <-- hides
Run Code Online (Sandbox Code Playgroud)

要么

android:visibility="visible" <-- makes it visible
Run Code Online (Sandbox Code Playgroud)

Java的

在java文件中.当您需要以编程方式更改它时

textView.setVisibility(View.GONE);//makes it disappear
Run Code Online (Sandbox Code Playgroud)

要么

textView.setVisibility(View.VISIBLE);//makes it visible again
Run Code Online (Sandbox Code Playgroud)

不同的可见性:

  • 可见

说自己:将视图设置为可见

  • 无形

隐藏视图,但它仍然占据空间.

隐藏视图,使其不占空间.