当我按下并释放时,当我尝试更改图像(按钮)的源/资源时遇到此问题。
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中定义为按钮。
答案 0 :(得分:0)
按钮的图像不会从触摸时更改为释放时的图像,因为您正在设置相同的背景资源。
两种情况都包含:
ImageBtn.setBackgroundResource(R.drawable.btn1);
将其中一个设置为不同的图像。