Me gustaría mostrar, por ejemplo, este código html:
<body>
<p><b>Hello World</b></p>
<p>This is a test of the URL <a href="http://www.example.com"> Example</a></p>
<p><b>This text is bold</b></p>
<p><em>This text is emphasized</em></p>
<p><code>This is computer output</code></p>
<p>This is<sub> subscript</sub> and <sup>superscript</sup></p>
</body>
Quiero mostrarlo en un diálogo declarando html en recursos strings.xml
. ¿Cómo puedo hacerlo?
Respuestas:
La mejor manera de agregar código fuente html en strings.xml es usar
<![CDATA[html source code]]>
. Aquí hay un ejemplo:Luego puede mostrar este html en TextView usando:
Si tiene enlaces en su html y desea que se pueda hacer clic en ellos, use este método:
fuente
getText()
lugar degetString()
: stackoverflow.com/a/18199543/89818CDATA
el HTML real que incluye es mucho más fácil, no es necesario traducir todo el <,>, etc. Simplemente copie el HTML real y péguelo en su strings.xmlAquí está la mayoría de los ejemplos. No creo que la
pre
etiqueta sea compatible.Este es el
strings.xml
archivo:Aquí está el diseño. Tenga en cuenta que para que se pueda hacer clic en el enlace, se necesita un poco de trabajo adicional:
Finalmente, el código:
fuente
String.xml puede contener entidades HTML, así:
En su código:
getResources().getString(R.string.hello_world);
evaluará a"<span>"
. Puede utilizar este texto con formato HTML como este:fuente
Todo el estilo que admite el sistema de recursos XML se explica en la documentación de Android.
Recursos de cadenas: formato y estilo
Todo lo que se incluye allí se puede usar y configurar directamente
TextView
. Si necesita utilizar más marcado HTML, deberá colocar HTML sin formato (con caracteres de escape para<
,>
y demás ) en el recurso y cargar todo en un archivoWebView
.fuente
Esto funcionó para mí:
fuente