3

如何删除按钮背景资源我参考了这个,但我需要删除按钮背景,并且应该根据 deviceDefault 主题更改背景。意味着只是删除上次添加的资源,而不是分配新的资源。

任何人都可以帮助解决这个问题吗?谢谢你

4

6 回答 6

23

尝试在 xml 文件中分配背景:@null 以编程方式尝试 layout.setBackgroundResource(0);

于 2013-02-20T14:07:13.877 回答
21

您可以通过更改后台资源来做到这一点。在 XML 文件中,用于按钮的属性。

<Button
    ...
    android:background="@null" />

应该这样做。

于 2014-07-14T19:35:15.937 回答
16

您可以添加样式,而不是将背景设置为 @null:

<Button
    ...
    style="@style/Widget.AppCompat.Button.Borderless" />
于 2017-01-25T18:50:56.793 回答
0

如果您只这样做几次,一个简单的方法是在更改之前保存以前的背景。您可以将其存储在tagButton 的字段中:

//store previous background drawable
myButton.setTag(myButton.getBackground());

//    ... alter background, do whatever


//restore background drawable from tag
myButton.setBackground((Drawable)myButton.getTag());
于 2013-02-20T14:19:43.163 回答
0
your_view.setBackground(null);

成功移除预定义的背景。

于 2018-06-13T14:23:39.940 回答
-2
    Button b;
    b=(Button)findViewById(R.id.button1);
    b.setBackgroundResource(R.drawable.ic_launcher);
    b.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub

            b.setBackgroundResource(android.R.drawable.btn_default);

        }
    });

这应该可以帮助你

于 2013-02-20T14:13:28.687 回答