参考:Are parameters in strings.xml possible?
在Android开发中,字符串资源建议放在res/values/strings.xml
文件中,当有类似你有3次机会
这样的字符串,其中3
是变量,那么就需要这样的格式化字符串你有%d次机会
。如果直接把这个格式化字符串放在res/values/strings.xml
文件中的话,是不会达到预期效果的,需要转义%d
这个字符。应该换成你有%1$d次机会
。同样的,%s
应该转义为%1$s
,依次类推。
现在格式化字符串有了,使用的时候可以用如下代码段:1
2
3
4
5
6//假定字符串资源ID是 chance_times
//从资源文件中读取格式化字符串
String chances = getContext().getResources().getString(R.string.chance_times);
//用具体的数值格式化,得到的字符串为你有3次机会
String formated_str = String.format(chances, 3);
//心在可以显示formated_str了,代码省略