2016-05-25 8 views
1

ich HTML in meine WebView mitAndroid WebView loadDataWithBaseURL link href nicht unterstützt

webView.loadDataWithBaseURL("file:///android_asset/", getHTMLString(), "text/html", "UTF-8", ""); 

Ich möchte ein paar Seiten öffnen, mit Anker-Tag geladen haben, aber das funktioniert nicht und zeigt Fehler:

<li ><a href="about_us.html" class="gn-icon gn-icon-download">About Us</a></li> 
<li ><a href="contact_us.html" class="gn-icon gn-icon-download">Contact Us</a></li> 

ist es möglich was ich anwenden möchte oder nicht ?? Ich will offen neuen builtin Browser zu vermeiden, sollten Seiten wie ein Teil der Anwendung verhalten sein, hier ist getHTMLString() -Methode

String getHTMLString() 
{ 
    String htmlString = "<HTML><Head><BODY> 
    <ul> 
    <li ><a href=\"about_us.html\" class=\"gn-icon gn-icon-download\">About Us</a></li> 
    <li ><a href=\"contact_us.html\" class=\"gn-icon gn-icon-download\">Contact Us</a></li> 
    </ul> 
    </BODY></HEAD></HTML>"; 
    return htmlString; 
} 

Antwort

0

Try WebViewClient mit overrided onLoadResource einzustellen.
Sobald ich dies in meinen Code hinzugefügt haben, begannen alle Seiten in der gleichen WebView zu öffnen:

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

Wenn Sie nicht eine solche Wirkung erhalten würde, Sie manuell url Parameter analysieren kann und benötigt HTML-Seiten laden, indem Sie dich selber.