确定触摸位置是否位于特定点

时间:2017-02-03 20:38:36

标签: java android

如何判断用户输入的触摸位置是否(更有可能)从特定点左侧,顶部,右侧或底部?我知道如何获得触摸的位置,但不知道如何确定哪种方式"方式"它是。

@Override
public boolean onTouch(View v, MotionEvent event) {
    if(event.getAction() == MotionEvent.ACTION_DOWN){
        //...
    }
    return false;
}

示范图片:

enter image description here

1 个答案:

答案 0 :(得分:2)

假设它们是45度角,那么

dy = pointY- currentY
dx = pointX- currentX
if(abs(dy) > abs (dx) && dy <0 ) return bottom
else if(abs(dy) - abs (dx)) return top
else if(dx < 0) return right
else if (dx > 0) return left
else return same point

如果这些角度不是45度,那么您将不得不使用trig来确定边界的位置。