我希望能够访问Android上每个触摸事件的手指所覆盖的区域。
每个触摸事件都会产生一个坐标对X和Y,与手指的大小无关,因此触发事件的触摸区域也是如此。
我想知道是否有办法获得触发触摸事件的区域数据,例如大小或坐标不
非常感谢任何帮助。
提前感谢您的回答或重定向,
基督教
答案 0 :(得分:15)
方法motionEvent.getSize()
应该为您提供所需的内容(但准确度可能因设备的屏幕而异)。
答案 1 :(得分:2)
您需要实现OnGestureListener。
首先,您需要在onTouchEvent中注册GestureDetector
@Override
public boolean onTouchEvent(MotionEvent event) {
mGestureDetector.onTouchEvent(event);
return true;
}
在onShowPress中,您将获得起点
@Override
public void onShowPress(MotionEvent e) {
startX = e.getX();
startY = e.getY();
}
在onScroll中,您将获得终点。
@Override
public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX,
float distanceY) {
endX = e2.getX();
endY = e2.getY();
}