Используйте UIScrollView с 3 касаниями, а не один - PullRequest
0 голосов
/ 03 февраля 2010

Я хотел бы знать, если есть какой-то способ, я мог бы использовать три касания с UIScrollView.В итоге я хочу, чтобы UIScrollView передавался только одному UITouch (или, по крайней мере, думаю, что он имеет только одно касание), но имеет три касания вниз.Я хочу использовать, скажем так, средний палец или найти среднее значение (x, y) трех касаний и использовать это (x, y) в качестве одного касания, отправляемого в UIScrollView.Если кто-то знает или имеет какое-либо представление о том, как мне это сделать, загрузите, если возможно, код.

Ответы [ 2 ]

3 голосов
/ 03 февраля 2010

Если вы положите три пальца вниз, UIScrollView не будет прокручиваться, поэтому вам не придется беспокоиться об отключении поведения по умолчанию.Чтобы прокрутить его тремя пальцами, сделайте свою сумасшедшую математику, чтобы получить среднее значение, используя обычные сенсорные функции, а затем используйте - (void)setContentOffset:(CGPoint)contentOffset animated:(BOOL)animated для автоматической прокрутки.

0 голосов
/ 03 февраля 2010

Вероятно, вы можете реализовать свою идею, создав подкласс UIScrollView, а затем реализовать другое поведение в touchedBegan/Moved/Ended, изменив касания и передав их в суперкласс, если необходимо.

Лично я думаю, что вы не должны вводить сложные жесты. У большинства людей уже есть проблемы с жестами двумя пальцами. Мне потребовался год, чтобы узнать, что касание двумя пальцами в Maps.app также увеличивало масштаб. (Может быть, я тупой, хотя)

...