【发布时间】:2020-12-02 04:43:46
【问题描述】:
在使用数据绑定进行开发以直接在 XML 文件中绑定格式化字符串时,@{@string/stringName} 在没有数据绑定的情况下不能像普通属性 @string/stringName 一样工作,@{String.format(@string/stringName)} 也不能。
我想知道如何使用数据绑定来使用格式化字符串(例如<string name="my_string"> <font face="font_name" color="hex_color"> my text here with %s </font> </string>)以及数据绑定,因为@{@string/my_string("My name")} 无法正常工作。我的意思是,它确实在字符串中插入了“我的名字”,但没有像字体或颜色这样的格式化属性。
如果我不使用数据绑定而只是 @string/myName 格式化属性字体和颜色正常工作,但我没有得到 %s 的输入。
谢谢大家。
【问题讨论】:
-
你有什么解决办法吗?
-
是的,要使跨度标记起作用,您必须使用数据绑定在 XML 中调用 Span.fromHtml()。
标签: android xml string data-binding formatted