Java 更改img资源的问题
当按下并释放imagea按钮时,尝试更改其源/资源时,我遇到了此问题Java 更改img资源的问题,java,android,Java,Android,当按下并释放imagea按钮时,尝试更改其源/资源时,我遇到了此问题 Btn.setOnTouchListener(new View.OnTouchListener() { @Override public boolean onTouch(View v, MotionEvent event) { /*if(event.getAction() == MotionEvent.ACTION_DOWN) {
Btn.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
/*if(event.getAction() == MotionEvent.ACTION_DOWN) {
ImageBtn.setImageResource(R.drawable.btn1);
} else if (event.getAction() == MotionEvent.ACTION_UP) {
ImageBtn.setImageResource(R.drawable.btn0);
}*/
switch(event.getAction()) {
case MotionEvent.ACTION_DOWN:
ImageBtn.setBackgroundResource(R.drawable.btn1);
return true; // if you want to handle the touch event
case MotionEvent.ACTION_UP:
ImageBtn.setBackgroundResource(R.drawable.btn1);
return true; // if you want to handle the touch event
}
return false;
}
});
这是代码,我也尝试了注释中的内容,但没有结果。我必须提到的是,按钮只是在触摸时改变了它的资源,但释放后,它并没有改变
按钮侦听器位于相对布局上,因此在xml代码中定义为相对布局,而在java中定义为按钮 按钮的图像不会从您触摸按钮时更改为松开按钮时,因为您正在设置相同的背景资源 这两个案例都包含: ImageBtn.setBackgroundResourceR.drawable.btn1
将其中一个设置为不同的图像。按钮仅在触摸它时更改其资源,但释放后,它不会更改-您的操作启动代码只会重新设置操作启动代码设置的相同资源,因此您似乎不应该期望看到任何更改。如果你想让它在发布时显示一些不同的东西,你必须提供一个不同的资源作为你的论据。。。我真丢脸。我已经研究这个问题15分钟了,但没有注意到这一点。无论如何,谢谢你的回答。现在它起作用了:D.没问题。我也经常犯这样的小错误,花上几个小时试图弄清楚可能是什么:D