entre Desarrolladores

Recibe ayuda de expertos

Registrate y pregunta

Es gratis y fácil

Recibe respuestas

Respuestas, votos y comentarios

Vota y selecciona respuestas

Recibe puntos, vota y da la solución

Pregunta

4votos

¿WebView puede reconocer textto UTF-8?

¡Hola!

Miren, uso un WebView el cual lo lleno de datos directamente de Strings.xml, pero al momento de mostrarlo, no reconoce los signos de interrogación, acentos ni las letras "ñ".

Según yo, ya le implemente el UTF-8 pero no se si es el correcto o deplano el WebView no los reconoce como tal, así lo tengo:

 <string name="Acerca"> Acerca de App</string>
    <string name="AcercaText"> <![CDATA[<html><HEAD><meta name="tipo_contenido"  content="text/html;" http-equiv="content-type" charset="utf-8">
</HEAD><body style="text-align:justify><b><h1>Acerca de App</h1></b> Las tecnologías de la información están cambiando la noción y concepción que
tenemos del mundo, ante estos tiempos de cambio intenso, el campo legal se ha
quedado rezagado en la oleada de cambios que estamos experimentando, cuando las aplicaciones en los smartphones nos han permitido acceder a choferes privados, hospedaje de bajo precio, comunicación internacional gratuita y demás avances importantes, los servicios legales tradicionales siguen un modelo poco práctico que se vuelve cada vez menos accesible para las personas.

</body></html>
]]>

</string>

Así tengo en código:


         webv = (WebView) rootView.findViewById(R.id.webView);
        //Volver transparente al WebView
        webv.setBackgroundColor(Color.TRANSPARENT);
        String text = getResources().getString(R.string.AcercaText);
        webv.loadData(text, "text/html", null);

Espero y me puedan ayudar, de antemano gracias

2 Respuestas

4votos

x4mp73r Puntos13390

Hola @userTemp pues es algo muy sencillo realmente, colocarlo dentro del HTML no es correcto, no estoy seguro si lo puede reconocer, quizá sí, pero no sé como.

El UTF lo puedes poner al momento que llamas a tu String, de esta manera:

    webv.loadData(text, "text/html; charset=utf-8", "UTF-8");

Con esto se resuelve :D
Saludos!

0voto

userTemp comentado

¡Muchas gracias!

Funciona :D

1voto

MitsuGami Puntos8010

Tienes que indicarle el charset para dicho texto:

webv.loadData(text, "text/html; charset=utf-8", "utf-8");

Por favor, accede o regístrate para responder a esta pregunta.

Otras Preguntas y Respuestas


...

Bienvenido a entre Desarrolladores, donde puedes realizar preguntas y recibir respuestas de otros miembros de la comunidad.

Conecta