Я хочу знать, как определить, когда WebView полностью завершена загрузка.
Позвольте мне определить полностью .
- Все перенаправления произошли
- Страница визуально отображается, пока ничего не загружается
Плохие ответы на этот вопрос:
WebViewClient.onPageFinished()
- это срабатывает несколько раз, если есть перенаправления, загружающие страницу. Он также срабатывает до отображения страницы.
PictureListener.onNewPicture()
- срабатывает каждый раз, когда экран меняется, и УЖАСИТ при каждом перенаправлении. Откуда мне знать, какая стрельба является последней?
WebChromeClient.onProgressChanged()
- та же проблема, что и для onFageFinished. (Добавлено после того, как Дэвид предложил это решение ниже)
Thread.sleep(5000)
- должно быть очевидно, почему это не приемлемо.
Конечно, умная комбинация вышеперечисленного, которая работает, будет идеальной.
Почему я хочу знать это, спросите вы?
Потому что я хочу добавить javascript один раз после того, как веб-просмотр полностью завершена загрузка.