onTouch MotionEvent getTouchMinor и getTouchMajor всегда один и тот же результат числа, почему?
Глядя на документацию, основные касания и второстепенные касания являются осью эллипса для события касания. один для длины самого длинного измерения области касания, а другой для самого короткого события касания. как измерение эллипса.
Тем не менее, я протестировал этот код для методов getTouchMajor и getTouchMinor на нескольких планшетах Android. и сделал это, положив палец вниз так, чтобы площадь поверхности, касающаяся экрана, была больше в одном направлении, чтобы он не был кругом. таким образом, максимальные и минимальные числа не должны быть одинаковыми.
проблема в том, что независимо от того, какой формы область, касающаяся экрана, в событии касания, она всегда будет одинаковым числом с плавающей запятой для обоих. единственный способ сделать это возможно, если область кожи пальца, касающаяся экрана, является кругом.
так что, в основном, два android-планшета, которые я имею, рассматривают область касания события касания как область в форме круга, иногда большую или меньшую, но всегда делает ее в форме круга, есть ли какое-либо устройство, которое дает вам более точную форму?
единственная полезная информация, которую я получаю от этих функций, - это общий размер области касания.
почему оба числа одинаковы. и это не правильный результат?
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();