Android WebView loadDataWithBaseURL

时间:2017-05-10 06:08:39

标签: android webview

我有一个PHP服务,它返回我使用

在WebView中显示的HTML
    activity_news_complete_webview.loadDataWithBaseURL("", html, "text/html", "UTF-8", null);

还实现了WebViewClient,如下所示

 WebViewClient webViewClient = new WebViewClient() {
    @Override
    public void onPageStarted(WebView view, String url, Bitmap favicon) {
         super.onPageStarted(view, url, favicon);
    }

    @Override
    public void onPageFinished(WebView view, String url) {
        super.onPageFinished(view, url);
    }

    @SuppressWarnings("deprecation")
    @Override
    public boolean shouldOverrideUrlLoading(WebView view, String url) {
        view.loadUrl(url);
        return true;
    }

    @TargetApi(Build.VERSION_CODES.N)
    @Override
    public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request) {
        view.loadUrl(request.getUrl().toString());
        return true;
    }

    @Override
    public void onLoadResource(WebView view, String url) {
        super.onLoadResource(view, url);
    }
};

当我点击任意内容时,WebViewClient显示url属性约为:blank但标签包含html变量中的正确urla,我在WebView中加载。

任何能够建议我找到合适解决方案的人都会有很大的帮助,我已经阅读了很多关于这个问题的线索,但是没有找到任何合适的解决方案,因为我尝试的任何东西都会给出同样的问题。

1 个答案:

答案 0 :(得分:0)

您可以将此行替换为.loadDataWithBaseURL();

activity_news_complete_webview.loadData(html," text / html; charset = utf-8"," UTF-8");

它非常适合我。试试这个。