Looking at the documentation, the touch major and touch minor are axis of the ellipse for the touch event. one is for the length of the touch area longest measurement and the other for the shortest of the touch event. like the measurement of an ellipse.
however, i tested this code for getTouchMajor and getTouchMinor methods on several android tablets. and did this with putting my finger down so that the surface area touching the screen would be longer in one direction so it would not be a circle. this way the max and min numbers should not be the same.
the problem is that no matter what shape the area that is touching the screen in the on touch down event, it always is the exact same float number for both. the only way for this to be possible is if the finger skin area touching the screen is a circle.
so basically, the two android tablets I have treat the touch event area of touch as a circle shaped area, sometimes larger or smaller, however always makes it circle shaped, is there any device out there that gives you a more accurate shape?
the only good information I get from these functions is the general size of the touch area.
why are both the numbers the same. and is this not the correct result?
if(event.getAction() == MotionEvent.ACTION_DOWN){ float x = event.getX(); float y = event.getY(); float touchMajor = event.getTouchMajor(); // major axis of ellipse touch area float touchMinor = event.getTouchMinor(); // minor axis of ellipse touch area // Toast.makeText(context, "x " + x , Toast.LENGTH_SHORT).show(); // Toast.makeText(context, "y " + y , Toast.LENGTH_SHORT).show(); Toast.makeText(context, "touchMajor " + touchMajor , Toast.LENGTH_SHORT).show(); Toast.makeText(context, "touchMinor " + touchMinor , Toast.LENGTH_SHORT).show();