Motionevent.getX и getY

Мне нужна помощь в понимании следующего.

Скажем, у меня есть дисплей размером 854×480 пикселей. Почему методы MotionEvent.getX и getY возвращают float? Насколько я могу судить, пиксели на дисплее являются дискретными целыми числами, на дисплее не отображается половина пикселя.

Solutions Collecting From Web of "Motionevent.getX и getY"

На странице разработчика:

«Возвращает координату X этого события для данного указателя указателя (используйте getPointerId (int), чтобы найти идентификатор указателя для этого индекса). Целые числа – это пиксели, значение может иметь долю для устройств ввода, которые являются субпиксельными точками. "

http://developer.android.com/reference/android/view/MotionEvent.html#getX ()

Поэтому для некоторых устройств сенсорный экран может быть более точным, чем просто разрешение пикселей. Я бы предположил, что это будет в большинстве случаев для устройств с низкой плотностью, таких как Droid Eris.

Чтобы это было проще, подумайте о том, что сенсорный экран полностью независим от экрана; Как вы можете иметь планшет для планшетов одного размера, который работает независимо от разрешения экрана. Скажем, если ваше разрешение 1600×1200, перемещение вашего пера говорит .02 дюйма может быть эквивалентно 4 или 5 пикселям движения, тогда как на экране 800×600 это будет всего 2 или 3. (полностью заполненные цифры, но точка действительна )