Получить максимальный размер сенсорного события для устройства? - PullRequest
0 голосов
/ 30 июня 2011

Как мне получить доступ к значениям InputDevice.MotionRange getMotionRange(int axis), чтобы я мог найти максимально приемлемый размер touchEvent для данного телефона?

[править] Чтобы уточнить, я хочу соединить результаты MotionEvent.getSize() (1f - самая большая допустимая область сенсорных событий) с функцией, которая фактически сообщит мне это свойство телефона? Таким образом, получается приблизительный размер в пикселях / пикселях независимо от области касания.

В основном пытаюсь сделать что-то вроде ниже:

final InputDevice device = event.getDevice();

Ура!

1 Ответ

1 голос
/ 30 июня 2011

Существуют разные значения для разных сенсорных событий. Лучше всего начать с класса ViewConfiguration , в частности, с полями, в названии которых есть слово "slop". Если вы хотите знать, как далеко должен двигаться ваш палец, чтобы классифицировать его как событие прокрутки, вы должны использовать getScaledTouchSlop(); и если вы хотите узнать максимально допустимое расстояние между двумя отводами, чтобы они регистрировались как двойной отвод, вы должны использовать getScaledDoubleTapSlop().

Вы можете получить ViewConfiguration для любого данного Context, позвонив по номеру:

ViewConfiguration vc = ViewConfiguration.get( context );
...