Проведите функциональность при разработке UIwebview iPhone -

Я хотел бы захватить событие пользователя для моего приложения iPhone.

что касается яблока, его можно легко получить от touch.Moved:withEvent:.

У меня есть UIView, который содержит панель навигации вверху, панель инструментов внизу, между ними есть uiwebView.

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

У меня есть событие touchesMoved в моем контроллере представления. Где я могу написать это касание?

Пожалуйста, помогите мне..

1 ответ

Вы можете создать подкласс UIWebView, перезаписывая только методы touchesMoved, touchesStarted, touchesEnded и touchesCancelled. Сделайте свое обнаружение свайпа в этих методах, и пусть они вызовут [super ...], если вызов не принадлежит свайпу.

Проблема может заключаться в том, что обнаружение пролистывания не препятствует поведению UIWebView по умолчанию. Суперклассу также необходимо знать, когда касания начинаются, перемещаются, заканчиваются или отменяются. Таким образом, он может выполнить правильный выбор на делегате.

Поэтому, когда вы перезаписываете эти методы и не вызываете [super ...], или только если это не движение, поведение самого UIWebView, вероятно, не определено. Вот почему я упоминал, что вы всегда должны вызывать [super ...] в своей собственной реализации.

Редактировать: ТАК не нравилось, когда я ставил строки между скобками "меньше" и "больше". Итак, в приведенном выше тексте, где бы я ни упоминал [супер...], пожалуйста, заполните штрихи "Начинаем", "Касаемо перемещены", "Касаемо закруглены" и "Касаемо отменены на точках..."

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