【问题标题】:WebView.onPageFinished (WebView, String)WebView.onPageFinished (WebView, 字符串)
【发布时间】:2011-06-24 14:04:52
【问题描述】:

我正在尝试找出在 Android 的 WebView 中加载 url 的最佳方式,并且还需要能够更改其 fragmentId。问题是下面的代码不起作用:

        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。

【问题讨论】:

    标签: android webview


    【解决方案1】:
    web0.loadUrl("javascript:window.location.hash='#newframent'");
    

    【讨论】:

    • 感谢您指出这个错误。在我的代码中,我已经解决了这个问题。如果我在 WebViewClint.onPageFinished() 之后调用 (web0.loadUrl("javascript:window.location.hash='#newframent'");) 感兴趣,#newgragment 是否仍有可能丢失?
    猜你喜欢
    • 2011-11-07
    • 2014-12-09
    • 2014-09-16
    • 2020-05-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-31
    • 2012-03-04
    相关资源
    最近更新 更多