我正在尝试转换html字符串并将其设置为TextView,但我无法完全做到。
这是我的字符串,“你好,%1 $ s!你有< b>%2 $ d新邮件< / b>”
我正在使用 textview.setText(Html.fromHtml(myString)); ,这会产生一个带有Html标签而不是纯文本的输出。任何人都可以帮我这个吗?
非常感谢任何帮助。 感谢
答案 0 :(得分:13)
答案 1 :(得分:6)
这可能对您有所帮助:
Spanned marked_up = Html.fromHtml(myString);
textview.setText(marked_up.toString(),BufferType.SPANNABLE);
答案 2 :(得分:2)
尝试使用this版本的setText并使用SPANNABLE缓冲区类型
答案 3 :(得分:0)
有点晚但延伸TextView并覆盖SetText,如下所示:
public override void SetText(ICharSequence text, BufferType type)
{
base.SetText(Html.FromHtml(text.ToString()), BufferType.Spannable);
}
然后你可以使用你的TextView而不是你的axml中的常规TextView。
答案 4 :(得分:0)
甚至以后... Html.fromHtml现在已弃用:
textView.setText(
Html.fromHtml(model.getValue(), Html.FROM_HTML_MODE_COMPACT),
TextView.BufferType.SPANNABLE);
Html.FROM_HTML_MODE_COMPACT对我来说效果很好,请探索其他标志以了解不同的HTML解析行为。