만약 button이 세개있다면, 아래와 같이 핸들링하면 됩니다.
아래는 AppCompatButton으로 되어 있는데, Button이어도 상관없습니다.
Private mBtn1 = (AppCompatButton) rootView.findViewById(R.id.btn1);
Private mBtn2 = (AppCompatButton) rootView.findViewById(R.id.btn2);
Private mBtn3 = (AppCompatButton) rootView.findViewById(R.id.btn3);
private boolean mBtn1Pressed, mBtn2Pressed, mBtn3Pressed;
mBtn1.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
if (!mBtn2Pressed && !mBtn3Pressed) {
mBtn1.setImageResource(R.drawable.modON); // 배경이미지 변경. 혹은 배경은 selection.xml 파일로 해도 됨.
v.setPressed(true);
}
mBtn1Pressed = true;
break;
case MotionEvent.ACTION_UP:
mBtn1.setImageResource(R.drawable.modOFF); // 배경이미지 변경. 혹은 배경은 selection.xml 파일로 해도 됨.
v.setPressed(false);
mBtn1Pressed = false;
break;
}
return true;
}
});