gpt4 book ai didi

java - Android SpannableString(Builder) 不应用样式

转载 作者:行者123 更新时间:2023-12-01 09:05:14 25 4
gpt4 key购买 nike

SpannableStringBuilder str = new SpannableStringBuilder(decimalFormat.format(prizes[0])
+ "€");
str.setSpan(new StyleSpan(BOLD), 0, str.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);

money.setText("paid | " + str);

此代码应产生与此代码相同的结果

money.setText(Html.fromHtml("paid | <strong>" + decimalFormat.format(prizes[0]) 
+ "€</strong>")

但事实并非如此!我的文字显示为粗体fromHtml() 确实将其设置为粗体,如下所示: 这就是我希望它出现的方式,因为超过 here他们说它的性能更好,我想使用原生的 android 功能。使用 SpannableStringBuilder 它显示如下: 没有什么大胆的。我还尝试仅使用 SpannableString 而不是 SpannableStringBuilder,但这也没有改变任何内容。我做错了什么?

我的money变量是一个TextView

最佳答案

问题是您在金钱 TextView 的最后设置了一个字符串。它应该是一个跨接字符串。

检查这个:

String sMoney = decimalFormat.format(prizes[0]) + "€";

SpannableString styledString = new SpannableString("paid | " + sMoney);

//这行代码很重要,因为我在可扩展字符串中添加了“paid |”

styledString.setSpan(new StyleSpan(Typeface.BOLD), 7, styledString.length, 0);

money.setText(styledString);

关于java - Android SpannableString(Builder) 不应用样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41331516/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com