我正在使用 Html.fromHtml
TextView
查看 html。
Spanned result = Html.fromHtml(mNews.getTitle());
...
...
mNewsTitle.setText(result);
但是 Html.fromHtml
现在在 Android N+ 中已弃用
什么/我如何找到这样做的新方法?
原文由 Aldasa 发布,翻译遵循 CC BY-SA 4.0 许可协议
我正在使用 Html.fromHtml
TextView
查看 html。
Spanned result = Html.fromHtml(mNews.getTitle());
...
...
mNewsTitle.setText(result);
但是 Html.fromHtml
现在在 Android N+ 中已弃用
什么/我如何找到这样做的新方法?
原文由 Aldasa 发布,翻译遵循 CC BY-SA 4.0 许可协议
对于 Kotlin 用户,我们可以使用 String.parseAsHtml()
扩展函数,该函数使用 HtmlCompat 进而进行兼容性检查。
这可以从 androidx.core:core-ktx
的 android core kotlin 扩展中获得
原文由 Hrudhay 发布,翻译遵循 CC BY-SA 4.0 许可协议
3 回答787 阅读✓ 已解决
2 回答2k 阅读
2 回答908 阅读✓ 已解决
1 回答1k 阅读✓ 已解决
1 回答682 阅读✓ 已解决
2 回答751 阅读
2 回答739 阅读
2 回答1.3k 阅读✓ 已解决
2 回答696 阅读✓ 已解决
2 回答553 阅读✓ 已解决
3 回答6.8k 阅读✓ 已解决
2 回答1.4k 阅读✓ 已解决
更新:正如 下面提到的@Andy, 谷歌创建了
HtmlCompat
可以用来代替下面的方法。将此依赖implementation 'androidx.core:core:1.0.1
添加到应用程序的 build.gradle 文件中。确保使用最新版本的androidx.core:core
。这允许您使用:
您可以在 HtmlCompat 文档 中阅读有关不同标志的更多信息
原始答案: 在 Android N 中,他们引入了一种新的
Html.fromHtml
方法。Html.fromHtml
现在需要一个名为 flags 的附加参数。此标志使您可以更好地控制 HTML 的显示方式。在 Android N 及更高版本上,您应该使用这种新方法。旧方法已弃用,可能会在未来的 Android 版本中删除。
您可以创建自己的 Util 方法,它将在旧版本上使用旧方法,在 Android N 及更高版本上使用新方法。如果您不添加版本,请检查您的应用程序将在较低的 Android 版本上中断。您可以在 Util 类中使用此方法。
如果需要,您可以将
HTML.FROM_HTML_MODE_LEGACY
转换为附加参数。这使您可以更好地控制使用哪个标志。您可以在 Html 类文档 中阅读有关不同标志的更多信息