如何在 Android 中删除一个按钮或使其不可见?

我如何在 Android 中删除一个按钮,或使它不可见?

314596 次浏览
button.setVisibility(View.GONE);

将按钮可见性设置为 消失了(按钮将被完全“移除”——按钮空间将可用于其他小部件)或 隐形(按钮将变为“透明”——其空间将不可用于其他小部件) :

View b = findViewById(R.id.button);
b.setVisibility(View.GONE);

或 xml 格式:

<Button ... android:visibility="gone"/>

首先使按钮在 xml 文件中不可见,然后根据需要在 Java 代码中设置按钮可见。

Button resetButton=(Button)findViewById(R.id.my_button_del);
resetButton.setVisibility(View.VISIBLE); //To set visible

Xml:

<Button
android:text="Delete"
android:id="@+id/my_button_del"
android:layout_width="72dp"
android:layout_height="40dp"
android:visibility="invisible"/>

Java 代码中的 拿开按钮:

Button btn=(Button)findViewById(R.id.btn);
btn.setVisibility(View.GONE);

Java 代码中的 透明的按钮:

Button btn=(Button)findViewById(R.id.btn);
btn.setVisibility(View.INVISIBLE);

XML 文件中的 拿开按钮:

<Button
android:id="@+id/btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:visibility="gone"/>

XML 文件中的 透明的按钮:

<Button
android:id="@+id/btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:visibility="invisible"/>

试试这个代码:

button.setVisibility(View.INVISIBLE);

这个景色是可见的。

button.setVisibility(View.VISIBLE);

这个视图是不可见的,并且它不占用任何空间用于布局目的。

button.setVisibility(View.GONE);

但如果你只是想让它隐形:

button.setVisibility(View.INVISIBLE);
Button btn=(Button)findViewById(R.id.btn);
btn.setVisibility(8);

在按钮或图像中使用 setVisiability。
删除 Java 代码中的按钮:

Button btn=(Button)findViewById(R.id.btn);
btn.setVisibility(Button.GONE);

在 Java 代码中使用透明按钮

Button btn=(Button)findViewById(R.id.btn);
btn.setVisibility(Button.INVISIBLE);


您应该使您的按钮 xml 代码如下:

<Button
android:id="@+id/btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:visibility="gone"/>


隐藏:
能见度: 消失了
展示:
能见度: 看不见
能见度: 可见 < br >

将按钮从其父布局中完全移除:

((ViewGroup)button.getParent()).removeView(button);
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/activity_register_header"
android:minHeight="50dp"
android:orientation="vertical"
android:visibility="gone" />

试试这个代码

可见性在这段代码中工作得很好

button.setVisibility(button.getVisibility() == View.VISIBLE ? View.GONE : View.VISIBLE);

如果看不见就能看见,如果看得见就能看不见

如果你想做一个隐形按钮,那么使用这个:

<Button ... android:visibility="gone"/>


View.INVISIBLE:

按钮将变得透明。但它需要空间。

View.GONE

按钮将完全从布局删除,我们可以添加其他小部件的地方删除按钮。

为了从另一个类访问元素,您可以简单地使用

findViewById(R.id.**nameOfYourelementID**).setVisibility(View.GONE);

如果你想让你的按钮不可见,这样它就不会占用布局中的任何空间,那么在你的 Java 代码中添加以下内容:

Button button = (Button)findViewById(R.id.button);
button.setVisibility(View.GONE);

或 XML 格式: android:visibility="gone"

如果你想让你的按钮不可见,以至于它仍然占据你布局的空间,那么在你的 爪哇咖啡代码中用“ View.INVISIBLE”替换“ View.GONE”,或者在你的 Xml代码中用“不可见”替换“ gone”。