Android开发中的按钮控件,有没有个按下事件、抬起事件?

2024年11月28日 11:49
有2个网友回答
网友(1):

button.setOnTouchListener(new View.OnTouchListener() {
    @Override
    public boolean onTouch(View view, MotionEvent motionEvent) {
        //按下操作
        if(motionEvent.getAction()==MotionEvent.ACTION_UP){
            
        }
        //抬起操作
        if(motionEvent.getAction()==MotionEvent.ACTION_UP){
            
        }
        //移动操作
        if(motionEvent.getAction()==MotionEvent.ACTION_MOVE){
            
        }
        return false;
    }
});

网友(2):

@Override

public boolean onTouchEvent(MotionEvent ev) {

int action = ev.getAction();

switch (action) {

case MotionEvent.ACTION_DOWN://按下

Log.d(TAG, "---onTouchEvent action:ACTION_DOWN");

break;

case MotionEvent.ACTION_MOVE://移动

Log.d(TAG, "---onTouchEvent action:ACTION_MOVE");

break;

case MotionEvent.ACTION_UP://抬起

Log.d(TAG, "---onTouchEvent action:ACTION_UP");

break;

case MotionEvent.ACTION_CANCEL:

Log.d(TAG, "---onTouchEvent action:ACTION_CANCEL");

break;

}