使用数据绑定来绑定XML文件中的格式化字符串无法正常工作

问题描述

使用数据绑定进行开发以直接在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() 即可。也不要忘记导入它。

@{Span.fromHtml(@string/stringName("Julio"))}