有一种改变背景颜色但不改变字体的方法。
有任何想法吗?
问问题
33348 次
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
当缓冲区为 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);
于 2011-03-19T10:06:45.150 回答
2
@rafraph 的回答对我不起作用。我不得不使用
webView.loadUrl("javascript:document.body.style.setProperty(\"color\", \"white\");");
于 2015-12-20T21:48:41.233 回答
1
您可以使用 CSS 样式十六进制颜色连接您的答案一个正文标记 HTML,这是使用 JSON 响应的示例
第一:将 JSON 解码为 HTML 格式的函数
public String stripHtml(String html) {
return Html.fromHtml(html).toString();
}
二:在WebView中加载数据(无url)
String string_html;
string_html = "<body style="color:#535362;">" + youStringHTML + "</body>";
webView.loadDataWithBaseURL(null, stripHtml(string_html), "text/html", "utf-8", null);
于 2016-11-03T22:26:58.117 回答