尝试在下面的字符串文件中定义文本颜色时,使用java
工作正常<string name="price_value">Rp %1$s <font color=\"#f8011e\">(-%2$s)</font> </string>
以上字符串在我的java代码中被这样使用:
Html.fromHtml(String.format(
getString(R.string.price_value),
price,
discount + "%"
));
但同样的字符串不适用于Kotlin。以下是Kotlin的代码
Html.fromHtml(String.format(
getString(R.string.price_value),
price,
discount + "%"
))
这个字符串应该改变第二个动态参数的颜色,但它只能在java中工作,但Kotlin不会改变颜色。
有人可以告诉你为什么不能与 Kotlin 合作?
我也在Kotlin讨论页面上问了同样的问题,但没有得到任何答案。
https://discuss.kotlinlang.org/t/html-tags-inside-strings-xml-is-not-working-with-kotlin/7739
答案 0 :(得分:0)
我不确定100%确定这是你想要的。但这会使第二个参数变为红色。
var tekst = Html.fromHtml(String.format(
getString(R.string.price_value),
100,
""+10 + "%"
))
tv_textview.text = tekst
以上结果在tekst:&#34; Rp 100(-10%)&#34; (-10%)红色。