检测用户何时离开Android中的按钮

时间:2011-10-21 12:12:35

标签: android button ontouchlistener

当用户按下按钮后,是否可以随时检测到手指离开按钮?

我已经确定当用户垂直移动按钮时onTouchListener会得到一个动作(它给出了一个动作:ACTION_CANCEL),但是我找不到一种方法来确定用户何时水平移动按钮。

public boolean onTouch(View arg0, MotionEvent arg1) {
    switch(arg1.getAction()){
    case MotionEvent.ACTION_CANCEL:
    case MotionEvent.ACTION_UP:
        switch(arg0.getId()){
        case R.id.my_button:
            button.setBackgroundResource(R.drawable.untouched);
            break;
        }
        break;
    case MotionEvent.ACTION_DOWN:
        switch(arg0.getId()){
        case R.id.my_button:
            button.setBackgroundResource(R.drawable.touched);
            break;
        }
        break;
    }
    return false;
}

1 个答案:

答案 0 :(得分:1)

请尝试下一步:

arg1.getX();
arg1.getY();

arg1 - 来自您的代码

在这里你可以获得MotionEvent的坐标。接下来,您将使用此坐标执行任何操作

希望,它可以帮助你