2017-05-10 6 views
0

私は任意の上でタップしたときにそうすることでAndroidのWebViewのloadDataWithBaseURL

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); 
    } 
}; 

を次のように私は

activity_news_complete_webview.loadDataWithBaseURL("", html, "text/html", "UTF-8", null); 

を使用してのWebViewで表示HTMLはまたWebViewClientを実装し、私を返すPHPサービスを持っていますWebViewClientは、url属性がabout:blankであることを示していますが、タグには、WebViewでロードするhtml変数に適切なurlaが含まれています。

私にこの問題に対する適切な解決策を提案できる人は大きな助けになるでしょう。私はこの問題に関して多くのスレッドを読んだことがありますが、私が試したことは同じ問題があるので、

答えて

0

この行は、.loadDataWithBaseURL()に置き換えることができます。

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

私にとっては完璧に機能しています。これを試してみてください。