首页 > 解决方案 > 我需要以编程方式动态修改我的drawable

问题描述

我必须将一个drawable应用到一个按钮,但是在我点击我的按钮之前第一次发生的事情,即使条件是条件b,按钮drawable总是作为R.drawable.up出现。

int btnDrawable = R.drawable.up;

if(Condition a){
  btnDrawable = R.drawable.up;
}
else if(Condition b){
  btnDrawable = R.drawable.down;
}

mbtn.setBackground(getResources().getDrawable(btnDrawable));

标签: javaandroidandroid-drawableandroid-button

解决方案


这可能Condition a也是真的,所以它从不检查Condition b

你试过调试吗?(单击第一个 if 行的右侧,然后运行 ​​bu 单击运行图标旁边的错误图标。一旦代码停止,检查 和 的condition acondition b


推荐阅读