可绘制资源文件 - 更改图像

Drawable resource file - Changing Image

详细说明:

所以我希望静止图像因情况而异。一旦用户获得(在我的例子中)货币,我希望它检查他是否有足够的钱来购买。如果他有足够的钱,我希望按钮改变颜色,以直观地告诉用户他有足够的钱购买此升级。每次他的货币价值发生变化时,我都会调用这个函数。虽然生活并不完美,但我无法在我的 xml 中组合 java 代码,而且我不知道如何调用它。

总结:

我的问题是如何通过我的mainActivity

改变@drawable/button

我想要发生的事情的例子:

aFunction(){
    if(whatever){
            <item android:drawable="@drawable/buttonclick"    android:state_pressed="true"></item>
            <item android:drawable="@drawable/button"></item>
            }
            else
            <item android:drawable="@drawable/buttongray"></item>
}

在你的xml中:

<item android:drawable="@drawable/button"></item>
<item android:drawable="@drawable/buttonclick" android:state_pressed="true"></item>
<item android:drawable="@drawable/buttongray" android:state_enabled="false"></item>

并在您的 JAVA 代码中:

if(whatever){
    button.setEnabled(true);
} else {
    button.setEnabled(false);
}