iPhone - сделайте прокрутку UIWebView прокрутки вверх, когда пользователь касается строки состояния (iOS 4) - PullRequest
2 голосов
/ 25 октября 2011

У меня есть mainView, который содержит:

  • постраничный scrollView,
  • Управление страницей
  • кнопка закрытия

и каждая страница scrollView содержит подпредставление, содержащее веб-представление.

Пользователь может переходить от страницы к страницам слева направо и прокручивать вверх и вниз каждый веб-просмотр.

Но ... как я могу сделать отображаемую в данный момент веб-прокрутку вверх, когда пользователь касается строки состояния?

РЕДАКТИРОВАТЬ: для iOS4 конечно.

Ответы [ 2 ]

3 голосов
/ 25 октября 2011
[yourPaginatedScrollView setScrollsToTop:NO];
[(UIScrollView *)[yourWebView.subviews objectAtIndex:0] setScrollsToTop:YES];

Первая строка также важна, иначе будут назначены два вида прокрутки => iOS не может выбрать, поэтому при прикосновении к строке состояния она решит, что прокрутки прокрутки вверх не будет.

0 голосов
/ 25 октября 2011
  1. Если вы строите свое приложение на основе базового SDK для iOS 5, теперь вы можете использовать открытое свойство "scrollView" в UIWebView, используя его для прокрутки до любого смещения, которое вы пожелаете.

  2. Если вы строите для SDK <5.0, это можно сделать другим способом, используя функции HTML. Вы можете использовать тег Anchor где-то вверху в своем HTML-коде, в самом начале, сразу после начала тега, включите этот якорь: </p>

Теперь, когда пользователь нажимает на строку состояния, выполните это действие:

<A HREF="#top_of_page">

Каким-то образом, не совсем уверен, как же!

Возможно, используя:

- (NSString *)stringByEvaluatingJavaScriptFromString:(NSString *)script
* * ??? 1 022
...