Tutorial :Android: Measure/detect covered area by a finger touch on screen (NOT only touch coordinates)



Question:

I would like to get access to the area covered by a finger for each touch event on an Android.

Every touch event will result in a coordinate pair X and Y independent of how big the finger and consequently the touch area is that triggered the event.

I was wondering if there is a way to get the area data which triggered the touch event e.g. size or coordinates NOT

Any help is much appreciated.

Thanks in advance for you answer or redirects,

Christian


Solution:1

The method motionEvent.getSize() should give you what you want (but the level of accuracy may vary depending on the device's screen).


Solution:2

You need to implement OnGestureListener.

First of all, you need to register GestureDetector in onTouchEvent

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

In onShowPress you will get starting points

@Override  public void onShowPress(MotionEvent e) {      startX = e.getX();      startY = e.getY();  }  

In onScroll you will get the end points.

@Override  public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX,          float distanceY) {              endX = e2.getX();              endY = e2.getY();  }  

Note:If u also have question or solution just comment us below or mail us on toontricks1994@gmail.com
Previous
Next Post »