Android:通过手指在屏幕上触摸来测量/检测覆盖区域(不仅仅是触摸坐标)

问题描述:

我想访问Android上每个触摸事件所覆盖的区域。Android:通过手指在屏幕上触摸来测量/检测覆盖区域(不仅仅是触摸坐标)

每个触摸事件都会产生一个坐标对X和Y,而与触发事件的手指和触摸区域的大小无关。

我想知道是否有办法获得触发触摸事件的区域数据,例如大小或坐标不是

任何帮助,非常感谢。或

预先感谢你回答重定向,

基督教

您需要实现OnGestureListener。

首先,你需要的onTouchEvent

@Override 
public boolean onTouchEvent(MotionEvent event) { 
    mGestureDetector.onTouchEvent(event); 
    return true; 
} 

在onShowPress注册GestureDetector你会得到的出发点

@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(); 
} 
+5

这不会给你一个单一的触摸区域,我认为这是提问者所追求的。 – oli 2010-08-06 09:59:56

+0

感谢您的回答! – chriz 2010-08-25 08:27:21

的方法motionEvent.getSize()应该给你你想要的东西(但准确度等级可根据设备的屏幕上会发生变化)。

+0

谢谢,这看起来不错。我希望谷歌平板电脑将支持这种方法。 – chriz 2010-08-25 08:27:03