Android Webview - Определение имени заголовка при прокрутке пользователя - PullRequest
0 голосов
/ 23 октября 2011

У меня есть html-файлы в этом шаблоне.

<a name="header1"></a>
<h2>First Heading</h2>
<a>Some Text goes here</a><br/>
<br/>
<a name="header2"></a>
<h2>Second Heading</h2>
Some Text goes here<br/>
<br/>

Что выглядит так:


Первый заголовок

Некоторый текстидет сюда

Второй заголовок

Часть текста здесь


В ListView у меня есть список всех заголовков в html-файле и на основе того, какой заголовок выбирает пользователь, я переношу соответствующий заголовок наверхэкрана, выполнив view.loadUrl("javascript:window.location.hash='" + headerName + "'") в пользовательском методе WebViewClient onPageFinished и изменив заголовок экрана в строке заголовка на headerName.

Теперь моя проблема: если пользовательвыбирая header1 в ListView и прокручивая до header2, мне нужно знать, что пользователь находится в разделе header2, чтобы можно было изменить заголовок экрана.Как я могу узнать, какая часть html-файла отображается на экране?

Любая помощь приветствуется.

1 Ответ

0 голосов
/ 23 октября 2011

Я бы использовал javascript в setInterval () для отслеживания того, когда заголовок просматривался, отслеживая window.scrollY и сравнивая его с позицией страницы заголовка (которую вы, вероятно, должны вычислить и кэшировать). Подсказки на позиции страницы здесь . После этого обновите URL-адрес окна из javascript и отследите его с помощью методов вашего WebViewClient, и все будет готово.

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