按钮背景alpha复制

时间:2012-02-28 15:23:17

标签: android button background

我有Button并为其设置了后台资源:

button1.setBackgroundResource(R.layout.color00);

color00:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
  <item
    android:state_pressed="true"
    android:drawable="@drawable/img00" />
  <item
    android:state_pressed="false"
    android:drawable="@drawable/img00" />
</selector>

然后我将alpha设置为此按钮

button1.getBackground().setAlpha(50);

然后我有问题。如果我将此后台资源设置为button2:

button2.setBackgroundResource(R.layout.color00);

所以button1的alpha设置为button2与此资源的alpha。如何解决?

1 个答案:

答案 0 :(得分:1)

使用mutate: http://developer.android.com/resources/articles/drawable-mutations.html

Drawables对所有引用使用相同的状态。用户Mutate()用于不同的状态。