UIWebview GestureRecognizer для отображения панели инструментов - PullRequest
6 голосов
/ 30 ноября 2011

У меня есть веб-представление (внутри представления) и панель инструментов, которая скрыта большую часть времени.

Это довольно распространенное поведение для журналов ipad: нажатие на страницу скрывает и отображает панель инструментов, но панель инструментов по умолчанию скрыта.

Я использую shouldRecognizeSim одновременноouslyWithGestureRecognizer

Поведение прямо сейчас делает это:- Если пользователь касается страницы (веб-просмотра), он переключает состояние панели инструментов с помощью распознавателя жестов.- если пользователь касается страницы и в UIWebview есть интерактивный элемент, такой как веб-ссылка, он отвечает на эту интерактивную ссылку, но ТАКЖЕ переключает панель инструментов.

Требуемое поведение:- если пользователь нажимает на страницу в неинтерактивной области, он переключает состояние панели инструментов- если пользователь нажимает на страницу в интерактивной области, он ТОЛЬКО реагирует на взаимодействие с веб-представлением и НЕ переключает панель инструментов.

Обратите внимание, что здесь есть почти идентичный вопрос: Распознавание жестов с помощью UIWebView Даже если он помечен как решенный, прочитав его, вы увидите, что решение не сработало для автора, и он все еще получает двойной ответ, когда он (и я) хотят получить либо ответ, либо ответ.Я попытался опубликовать следующий вопрос, но он был удален, вероятно, потому что модератор полагал, что он был решен

1 Ответ

0 голосов
/ 13 мая 2012

Если UIWebView по какой-либо причине ловит прикосновение, вы также не сможете получить обратный вызов UIGestureRecognizer. Единственное, что я рекомендую, - это делать все, что происходит на веб-сайте, когда вы нажимаете на что-то, выполняете какой-то JavaScript, а затем перехватываете этот Javascript. Вы можете взять этот в качестве примера.

...