2011-06-24 54 views
0

我想弄清楚在Android的WebView中加載URL的最佳方式是什麼,也需要能夠改變它的fragmentId。問題是,下面的代碼不起作用:WebView.onPageFinished(WebView,字符串)

 web0.loadUrl("file:///android_asset/fragmentchange.html"); 
     web0.loadUrl("javascript:window.location.hash='#newframent'"); 

我相信這是因爲第二行是在頁面加載完成之前執行的。所以,片段從未設置。或者它以某種方式被覆蓋。無論如何,我必須使用以下回調來確保WebView完成加載,然後更改片段。

  // Override this call 
      WebViewClient.onPageFinished(); 
      // to mark WebView finished the page load. 

      // In a separate thread, 
       if(web0.pageloadFinished()) { 
       web0.loadUrl("javascript:window.location.hash='#newframent'"); 
       } 

現在,我想了解當WebViewClient.onPageFinished()被調用,如果還有可能的是,fragmentId迷路。

回答

0
web0.loadUrl("javascript:window.location.hash='#newframent'"); 
+0

謝謝你指出那個錯誤。在我的代碼中,我已經修復了這個問題。如果我在WebViewClint.onPageFinished()之後調用(web0.loadUrl(「javascript:window.location.hash ='#newframent'」);),那麼#newgragment仍然有可能會丟失嗎? – dongshengcn