26

背景色を変更する方法はありますが、フォントを変更する方法はありません。
何か案は?

4

8 に答える 8

38

何かのようなもの

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");
于 2012-06-17T09:08:47.077 に答える
20

私はそれをonPageFinishedメソッドに入れなければなりませんでした。

_webView.setWebViewClient(new WebViewClient() {
    public void onPageFinished(WebView view, String url) {
        _webView.loadUrl(
            "javascript:document.body.style.setProperty(\"color\", \"white\");"
        );
    }
});
于 2016-06-05T17:59:20.877 に答える
12

私は上手く理解できていない気がします。WebViewは、指定されたHTMLを表示するだけなので、通常のHTML / CSSを使用して、表示されるコンテンツを変更します。

于 2009-08-10T16:30:12.187 に答える
10

これは私のために働いた

myWebView.getSettings().setJavaScriptEnabled(true);
myWebView.setWebViewClient(new WebViewClient() {
public void onPageFinished(WebView view, String url) {
    view.loadUrl(
        "javascript:document.body.style.setProperty(\"color\", \"white\");"
    );
  }
});
于 2017-04-05T05:45:02.420 に答える
6

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

webview.loadUrl("javascript:document.body.style.color=\"white\";");
于 2014-01-23T19:22:56.200 に答える
2

バッファがスパン可能である場合、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);
于 2011-03-19T10:06:45.150 に答える
2

@rafraphの答えは私にはうまくいきませんでした。私は使用しなければなりませんでした

webView.loadUrl("javascript:document.body.style.setProperty(\"color\", \"white\");");
于 2015-12-20T21:48:41.233 に答える
1

回答を1つの本文タグHTMLとCSSスタイルの16進色で連結できます。これは、JSON応答を使用した例です。

最初:JSONをHTML形式にデコードする関数

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);
于 2016-11-03T22:26:58.117 に答える