Pregunta

Hay un método para alterar el color de fondo pero no la fuente.
¿Alguna idea?

¿Fue útil?

Solución

No estoy seguro de entender. La vista web sólo muestra el código HTML que le dan por lo que sólo se utilizaría normal de HTML / CSS para modificar el contenido que se muestra en su interior.

Otros consejos

algo así como

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");

tuve que ponerlo en el método onPageFinished.

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

Esta es la manera más fácil que encontré (cambiar el color del texto a blanco, por ejemplo):

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

Esto funcionó para mí

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

Cuando el tampón es SPANNABLE, modificando el HTML directamente es una solución ideal. El tipo de letra, color, tipo de letra, el estilo puede verse afectados a través de 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);

@ respuesta de rafraph no funcionó para mí. Tuve que usar

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

Puede concatenar su respuesta un cuerpo etiqueta HTML con el estilo CSS de color hexadecimal, este es un ejemplo usando una respuesta JSON

En primer lugar: la función de decodificación JSON a formato HTML

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

En segundo lugar: Cargar datos en WebView (sin 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);
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top