programacion - manual android studio avanzado
¿Cómo configurar una parte del texto en negrita cuando se usa AlertDialog.setMessage() en Android? (3)
¿Cómo configurar una parte del texto en negrita cuando se usa setMessage()
? Agregar <b>
y </b>
a mi String
no funciona.
Esta page describe cómo agregar formato HTML a las cadenas de recursos.
<resources>
<string name="welcome_messages">Hello, %1$s! You have <b>%2$d new messages</b>.
</string>
</resources>
Y no olvides usar: Html.fromHtml
AlertDialog.setMessage(Html.fromHtml(getString(R.string.welcome_messages)));
Esto funciona para mí
También debe usar Html.fromHtml()
. Por ej.
AlertDialog.setMessage(Html.fromHtml("Hello "+"<b>"+"World"+"</b>"));
Actualizar:
Parece que Html.fromHtml(String source)
ha quedado obsoleto en la última versión de Android Nougat. Aunque la desactivación no significa que deba cambiar su código ahora, es una buena práctica eliminar el código obsoleto de su aplicación lo antes posible.
El reemplazo es Html.fromHtml(String source, int flags)
. Solo necesita agregar un parámetro adicional que mencione una bandera.
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.N) {
AlertDialog.setMessage(Html.fromHtml("Hello "+"<b>"+"World"+"</b>", Html.FROM_HTML_MODE_LEGACY));
} else {
AlertDialog.setMessage(Html.fromHtml("Hello "+"<b>"+"World"+"</b>"));
}
Para más detalles eche un vistazo a esta respuesta
<string name="abouttxt">"<b>Info</b>/ntexttxtxtxtxt"</string>
esto funciona para mí en xml