使用字符串中的变量,做 Html.fromHtml
Posted
技术标签:
【中文标题】使用字符串中的变量,做 Html.fromHtml【英文标题】:using variables in a string, to do Html.fromHtml 【发布时间】:2011-10-22 17:26:57 【问题描述】:有没有办法在这种情况下使用变量?我想要这个代码:
字符串 str = "测试"; html.fromHtml("test <.bold> str <.> test");
制作:
测试测试测试
但它却使:
测试 str 测试
谢谢
【问题讨论】:
您在引号中包含“str”。它是一个变量,应该添加到引号之外,因为 teepee 在下面已经回答了。<.bold>
不是有效的 HTML,Html.fromHtml()
不认可。
【参考方案1】:
使用带有 android SDK 弃用验证的扩展函数的 kotlin 版本
@Suppress("deprecation")
fun String.fromHtml(): Spanned = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N)
Html.fromHtml(this, Html.FROM_HTML_MODE_LEGACY)
else
Html.fromHtml(this)
val str = "test"
textView.text = "test <bold>$str</bold> test".fromHtml()
【讨论】:
【参考方案2】:这个呢?
String str = "test";
textView.setText( Html.fromHtml("test <bold>" + str + "</bold> test") );
或者对于更困难的解决方案,您可以使用 java 的 replaceAll 替换用正则表达式定义的字符串。
【讨论】:
以上是关于使用字符串中的变量,做 Html.fromHtml的主要内容,如果未能解决你的问题,请参考以下文章
使用 Linkify.addLinks 与 Html.fromHtml 结合
Android N 中不推荐使用 Html.fromHtml
Android N 中不推荐使用 Html.fromHtml