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


Answers:


364

将按钮的可见性设置为GONE(按钮将被完全“移除”-按钮空间将可用于其他小部件)或INVISIBLE(按钮将变为“透明”-其空间将不可用于其他小部件):

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

或在xml中:

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

当您将其设置为消失时,它仍算作儿童吗?如果我做了像儿童计数之类的事情还是让孩子进入指数榜呢?
Lpc_dark

1
我认为是的,它仍然可以算作一个孩子。
康斯坦丁·布罗夫

11
并以此显示它。b.setVisibility(View.VISIBLE);
Zar E Ahmer

37

首先使按钮在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"/>

我想使按钮不可见,但是在活动中应该可以使用,就像超级秘密按钮一样。它不应显示在活动中,但该按钮应该起作用
Samrat Mazumdar 2012年

1
使用“ buttonCleanup.setVisibility(View.VISIBLE);” 而不是零。
文森特2015年

17

删除Java代码中的按钮:

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

Java代码中的透明 Button :

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"/>


12

该视图可见。

button.setVisibility(View.VISIBLE);

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

button.setVisibility(View.GONE); 

但是,如果您只想使其不可见:

button.setVisibility(View.INVISIBLE);

4

在button或imageViwe或...中使用setVisibility。
要在Java代码中删除按钮,请执行以下操作:

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

到Java代码中的透明Button

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"/>


隐藏:
可见性:消失
显示:
可见性:不
可见可见性:可见


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

如果不可见则使其可见,如果可见则使其不可见


1

视图控件(TextView,EditText,Button,Image等)均具有可见性属性。可以将其设置为以下三个值之一:

可见 -显示

android:visibility="visible"

隐形 -隐藏但保留空间

android:visibility="invisible"

消失 -完全隐藏

android:visibility="gone"

要在代码中设置可见性,请使用静态View类中可用的公共常量:

Button button1 = (TextView)findViewById(R.id.button1);
button1.setVisibility(View.VISIBILE);

0

要从其父级布局中完全删除按钮:

((ViewGroup)button.getParent()).removeView(button);

0
<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" />

试试这个代码

可见性在此代码中工作正常


0

如果要使按钮不可见,请使用以下命令:

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

View.INVISIBLE:

按钮将变为透明。但它占用空间。

View.GONE

按钮将从布局中完全删除,我们可以在已删除按钮的位置添加其他小部件。




-2

试试这个代码:

button.setVisibility(View.INVISIBLE);

9
您真的不应该在此方法中使用硬编码的值-只需使用常量-View.GONE,View.VISIBLE或View.INVISIBLE
bkurzius
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.