androidandroid-jetpack-composeandroid-jetpack-compose-text

Jetpack compose display html in text


I have a string that contains html, how can I display this in a Jetpack compose Text?

In a TextView I would use a Spanned and do something like:

TextView.setText(Html.fromHtml("<p>something", HtmlCompat.FROM_HTML_MODE_LEGACY)

How can I do this with Text from Jetpack compose?


Solution

  • Unfortunately, Jetpack compose does NOT support HTML yet...

    So, what you could do is:

    Option 1: Create your own HTML parser

    Jetpack compose supports basic styling such as Bold, color, font etc.. So what you can do is loop through the original HTML text and apply text style manually.

    Option 2: Integrate the old TextView into your Jetpack compose.

    Please read: Adopting Compose in your app

    Thanks.