Как рассчитать диаметр TouchPoint на устройствах iPhone,iPad и Android?

Теперь я понимаю, что у нас по умолчанию в iPhone может быть 5 точек касания, и для разных SDK включены разные точки касания. Однако я выполнил регистрацию точек касания и получение расстояний, фактическое количество точек касания. Я хотел бы знать, есть ли способ выполнить и получить диаметр определенной точки касания, например, для вычисления касания большим пальцем по сравнению с указательным пальцем. Есть идеи?

3 ответа

Я думаю, что Apple ясно дает понять, что они не намерены предоставлять сторонним разработчикам доступ к низкоуровневой мультисенсорной информации. Из документации Apple по обработке событий в iOS:

Палец на экране обеспечивает гораздо иной уровень точности, чем указатель мыши. Когда пользователь касается экрана, область контакта фактически является эллиптической и имеет тенденцию к смещению ниже точки, где пользователь думает, что он или она коснулся. Это "пятно контакта" также различается по размеру и форме в зависимости от того, какой палец касается экрана, размера пальца, давления пальца на экране, ориентации пальца и других факторов. Базовая система Multi-Touch анализирует всю эту информацию для вас и вычисляет одну точку касания.

Это возможно на Android (4.3 у меня есть, но, скорее всего, на других тоже), так как вы можете активировать наложение свойств сенсорного экрана в параметрах разработчика в качестве местоположения указателя (в категории " Вход "), где отображаются координаты, их дельта (= Разница) и два свойства, которые могут вас заинтересовать: Prs, то есть давление и размер. Кажется, вы можете найти пороги, которые распознают большой и указательный пальцы в большинстве случаев. Это как раз то, что я бы подразумевал из значений, которые я видел на этом дисплее.

Доказательством того, что это возможно в рамках разрешенного API, является еще одно тестовое Android-приложение MultiTouch, указанное в Google Play, которое для меня показывает давление каждого прикосновения в его собственном интерфейсе (поэтому оно должно быть доступно в стандартном API).

Я не могу говорить с Android, но общедоступные API в iOS SDK не дают никакой информации о касании, кроме его позиции. Эти ребята нашли частный API (то есть тот, который будет отклонять вас из App Store, если вы его используете) для определения диаметра касания на экране, но они не предоставили никакой дополнительной информации или не выпустили библиотеку.

Другие вопросы по тегам