Запрет UIScrollView от остановки прокрутки при касании - PullRequest
2 голосов
/ 15 июня 2011

Вопрос немного странный, но это то, что мне нужно;)

Обычно, когда прокручивается UIScrollView, если вы дотрагиваетесь до вида, он немедленно останавливается, но я хочу изменить это поведение.

Я создал подкласс UITableView и переопределил метод touch *, но пока таблица прокручивается, никакие события touch не вызываются. Как я прочитал в документации Apple, UIScrollView (который является родительским классом UITableView) не пересылает эти события.

Я хочу обнаружить это касание (которое остановит прокрутку в обычном сценарии), но сохранить прокрутку UIScrollView.

Итак, вместо того, чтобы остановить прокрутку, я хочу иметь метод, который будет вызываться.

1 Ответ

7 голосов
/ 15 июня 2011

Когда scrollViewDidEndDragging:willDecelerate:, добавьте прозрачное представление над табличным представлением с userInteractionEnabled, которое перехватывает касания. Затем на scrollViewDidEndDecelerating: удалите его, чтобы восстановить нормальное взаимодействие с табличным представлением. Подключите обработчики касания на оверлее, чтобы получить обратные вызовы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...