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

时间:2010-11-08 20:24:42

标签: android android-button

如何删除Android中的按钮,或使其隐身?

15 个答案:

答案 0 :(得分:351)

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

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

或xml:

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

答案 1 :(得分: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"/>

答案 2 :(得分:17)

java code 删除按钮:

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

答案 3 :(得分:13)

button.setVisibility(View.GONE);

答案 4 :(得分:12)

此视图可见。

button.setVisibility(View.VISIBLE);

此视图不可见,并且不需要任何空间用于布局。

button.setVisibility(View.GONE); 

但如果你只想让它变得不可见:

button.setVisibility(View.INVISIBLE);

答案 5 :(得分:4)

在按钮或图像中使用setVisibilityViwe或.....
要删除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"/>


隐藏:
         能见度:走了 显示:
        能见度:看不见的
        能见度:可见

答案 6 :(得分:2)

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

如果可见则不可见且不可见

使其可见

答案 7 :(得分:1)

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

可见 - 显示

android:visibility="visible"

隐形 - 隐藏但保留空间

android:visibility="invisible"

消失 - 完全隐藏

android:visibility="gone"

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

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

答案 8 :(得分:0)

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

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

答案 9 :(得分: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" />

试用此代码

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

答案 10 :(得分:0)

如果你想制作隐形按钮,请使用:

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

View.INVISIBLE:

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

View.GONE

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

答案 11 :(得分:0)

要访问其他课程的元素,您只需使用

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

答案 12 :(得分:0)

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

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

或在 XML 中:android:visibility="gone"

如果你想让你的按钮不可见,这样它仍然占用你的布局空间,那么在你的 java 代码中用“View.INVISIBLE”替换“View.GONE”或替换“gone”在您的 xml 代码中使用“invisible”。

答案 13 :(得分:-1)

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

答案 14 :(得分:-2)

试用此代码:

button.setVisibility(View.INVISIBLE);