Как получить contentOffset в середине прокрутки UIScrollView? - PullRequest
0 голосов
/ 26 февраля 2012

Как можно получить contentOffset или аналогичную информацию о UIScrollView, пока пользователь все еще прокручивает? Например, если я хотел поместить изображение в качестве заголовка прямо над содержимым UIWebView, без изображения, являющегося частью scrollView WebView, но обновлять его, пока пользователь выполняет прокрутку, а не просто переходить на позицию после отпускания. Как я мог сделать это?

Ответы [ 2 ]

1 голос
/ 26 февраля 2012

В iOS 5 UIWebView имеет свойство scrollView, которое UIScrollView отвечает за обработку прокрутки. До iOS 5 вы могли искать свойство subviews UIWebView для подпредставления, используя [subview isKindOfClass:[UIScrollView class]].

Получив UIScrollView, вы можете установить его свойство делегата. Затем в делегате вы можете ответить на сообщение scrollViewDidScroll:, когда пользователь прокручивает его, и обновить позицию / содержимое вашего представления заголовка.

Добавлено: 29/2/2012 - Чтобы сохранить функциональность UIWebView, вам необходимо перенаправить перехваченные методы UIScrollViewDelegate на UIWebView. Для этого вы можете вызвать UIWebView в конце всех обязательных методов в протоколе и реализовать что-то вроде forwardInvocation: или forwardingTargetForSelector для необязательных методов протокола. Это сохранит ваше исходное поведение UIWebView и позволит вам улучшить его с помощью собственной логики.

0 голосов
/ 26 февраля 2012

Почему вы не можете просто поместить заголовок как отдельный вид над UIWebView? Почему это должно быть подпредставлением?

...