2012-10-19 12 views
5
page = "<!DOCTYPE HTML><html><head><meta http-equiv='Content-Type' content='text/html; charset=utf-8'>" + 
        "</head><body>" + page + "</body></html>"; 
      webContent.loadData(page, "text/html;charset=UTF-8", "UTF-8"); 

Na wezwanie do loaddata WebView daje "URL jest nieprawidłowy", w zwrotnego onReceivedError url jest „data: text/html; charset = UTF-8; UTF-8,% 3C! DOCTYPE% 20HTML% 3E ..../body% 3E% 3C/html% 3E ". Nie dotyczy to wszystkich ładowanych danych.loaddata próbuje wykorzystać dane jak adres URL w WebView

Uwaga:

  • w Jelly Bean wszystko działa poprawnie, problem ten występuje podczas testów na 2.3
  • Próbowałem ładowanie danych z loadDataWithBaseURL ale WebView does't zinterpretować html, tylko pokazuje zawartość ciągu.

Dziękujemy!

Odpowiedz

8
webContent.loadDataWithBaseURL(null, page, "text/html", "UTF-8") 

działa na mnie, podczas gdy z loaddata() mam czasami problem

2

załadować url można użyć kodu jak

WebView myWebView = (WebView) findViewById(R.id.webview); 
myWebView.loadUrl("http://www.example.com"); 

myślę poniżej linku jest pomocne

webview in android

1

Nie wiem, czy to pomaga, ale można spróbować zmienić e ta linia:

webContent.loadData(page, "text/html;charset=UTF-8", "UTF-8"); 

do tego:

webContent.loadData(page, "text/html", "UTF-8"); 

ponieważ już zdefiniowane charset w wywołaniu

Powiązane problemy