2009-08-10 28 views

答えて

7

私は理解できません。 WebViewはあなたが与えたHTMLを表示するだけで、普通のHTML/CSSを使ってその中に表示されている内容を変更します。

+0

確かに、元のHTMLを変更しないでください。 – yanchenko

+0

基本となるHTMLはサードパーティ製のものですか?あなたはいつもそれを変更し、wvMyWebView.loadUrl( "ここでjavascript関数を呼び出す")を行っているアクティビティからjavascriptを呼び出す最後にjavascriptを挿入することができます。 – MattC

2

バッファがSPANNABLEの場合は、HTMLを直接変更することが理想的です。スタイルは、すべてのHTMLによって影響を受けることができ、フォント、色、書体、:

String szMessage = "<font face='trebuchet' size=30><a href=zz><b>click me</b></a></font>"; 

TextView tv = (TextView)findViewById(R.id.tv_message); 
tv.setText(Html.fromHtml(szMessage), BufferType.SPANNABLE); 
22

String text = "<html><head>" 
      + "<style type=\"text/css\">body{color: #fff; background-color: #000;}" 
      + "</style></head>" 
      + "<body>"       
      + your_string_text_here 
      + "</body></html>"; 

webview1.loadData(text, "text/html", "utf-8"); 
5

のようなもの。これは、私が見つけた最も簡単な方法(例えばテキストの色を白に変更)です。

webview.loadUrl("javascript:document.body.style.color=\"white\";"); 
+0

フォントの種類を変更する方法 –

+0

問題のウェブビューでJavaScriptを有効にする必要があることに注意してください。そうしないと呼び出しは効果がありません – sfera

3

@ rafraphの回答は私のためには機能しませんでした。私はonPageFinished方法でそれを入れていた

webView.loadUrl("javascript:document.body.style.setProperty(\"color\", \"white\");"); 
7

を使用する必要がありました。

_webView.setWebViewClient(new WebViewClient() { 
    public void onPageFinished(WebView view, String url) { 
     _webView.loadUrl(
      "javascript:document.body.style.setProperty(\"color\", \"white\");" 
     ); 
    } 
}); 
1

あなたはCSSスタイルの六角色で、あなたの答え1つのbodyタグのHTMLを連結することができ、これはJSONレスポンス

まず使った例です:HTML形式にデコードJSONのための機能

public String stripHtml(String html) { 
    return Html.fromHtml(html).toString(); 
} 

を2番目:WebViewでデータをロードする(URLなし)

String string_html; 
string_html = "&lt;body style=&quot;color:#535362;&quot;&gt;" + youStringHTML + "&lt;/body&gt;"; 
webView.loadDataWithBaseURL(null, stripHtml(string_html), "text/html", "utf-8", null); 
2

これは私のために働いた

関連する問題