WebView가 언제 일 때를 결정하는 지 알고 싶습니다. 로딩이 완료되었습니다.Android WebView가 완전히로드되는시기를 결정하는 방법은 무엇입니까?
완전하게으로 정의하자. - 리디렉션이있는 경우이 여러 번 발사
WebViewClient.onPageFinished()
:
- 모든 리디렉션 아무것도이 질문에
잘못된 답변을로드 아직 없습니다, 페이지가 눈에 띄게 표시됩니다
PictureListener.onNewPicture()
-이 때마다 화면이 변경되고 AFAICT가 리디렉션됩니다. 어떤 발사가 마지막 발사인지 어떻게 알 수 있습니까?
WebChromeClient.onProgressChanged()
- onPageFinished와 같은 문제입니다. (David이 아래에서이 해결책을 제안한 이후에 추가되었습니다.)
Thread.sleep(5000)
- 이것이 왜 받아 들여지지 않는가?
물론 위의 작업을 영리하게 조합하면 완벽 할 것입니다.
왜 내가이 사실을 알고 싶습니까? 웹보기가로드가 완료 완전히 되면 좀 자바 스크립트 한 번을 주입하려는 때문입니다.
'WebViewClient.onPageFinished()'에 "bad answer"를 추가하면 [this] (http://stackoverflow.com/a/5172952/725417)에 따르면 여러 번 실행됩니다 ** 또한 ** if 한 페이지에 여러 개의 iframe이 있습니다. – uTubeFan
@Carlos 사람은 당신과 정확히 같은 위치에 있습니다.thats가 내 상황을 악화시키는 유일한 이유는 PictureListener가 더 이상 사용되지 않는다는 것입니다. 솔루션을 생각해 낼 수 있었습니까? 웹 너비와 화면 너비를 나누어야하는 총 페이지 수를 계산해야합니다. 그러나 페이지가 화면에 완전히 렌더링 될 때까지는 그렇게 할 수 없습니다. 어떤 해결책? –
@ArunavhKrishnan 잘 보니 지난 3 년 전이었습니다. 결국 나는 받아 들인 대답과 비슷한 것을했다고 생각합니다. 행운을 빕니다! –