2013-02-20 79 views
0

How to remove button background resource我提到这一点,但我的需要是删除按钮背景,并应按照deviceDefault主题更改背景。意味着只删除上次添加的资源,而不分配新的资源。如何去除Button的背景资源?

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

+0

我不明白你在问什么。 “删除”后,该按钮应该看起来像系统默认按钮?如果是这样,你链接的答案就是这样。如果没有,请澄清。 – Geobits 2013-02-20 14:06:48

+0

是的你是对的。在那个链接btn_default被添加,这是默认的安卓按钮,但在我的情况下,我有我自己的theame,即DeviceDefault主题,其中按钮的外观和感觉是不同的' – 2013-02-20 14:09:30

回答

17

尝试分配背景:@null在xml文件中 for programetically try layout.setBackgroundResource(0);

+0

不,我必须以编程方式执行 – 2013-02-20 14:10:59

+0

添加your_button.setBackgroudResource(0)将删除任何预定义的背景。 – 2013-02-20 14:20:29

+0

雅我试过了,它消除了一切 – 2013-02-20 14:21:14

-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); 

     } 
    }); 

这会帮助你

+2

这与上述链接中的答案相同。 – 2013-02-20 14:15:28

0

如果你只是做了几次,一个简单的方法是只保存之前的背景改变它。您可以将其存储在按钮的tag字段中:

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

// ... alter background, do whatever 


//restore background drawable from tag 
myButton.setBackground((Drawable)myButton.getTag()); 
+0

这个逻辑可以应用,我想,会尝试让你回来。谢谢 – 2013-02-20 14:25:25

7

您可以通过更改背景资源来完成此操作。在XML文件中,为按钮的属性。

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

应该这样做。

2

而不是设置背景@null您可以添加的风格:

<Button 
    ... 
    style="@style/Widget.AppCompat.Button.Borderless" />