转自:http://www.cnblogs.com/coolszy/archive/2011/07/01/2095545.html
有些朋友可能会动态的修改Android中strings.xml文件中的值,在这里给大家推荐一种简单的方法。
strings.xml中节点是支持占位符的,如下所示:
< string name ="data" > 整数型:%1$d,浮点型:%2$.2f,字符串:%3$s </ string >
其中%后面是占位符的位置,从1开始,
$ 后面是填充数据的类型
%d:表示整数型;
%f :表示浮点型,其中f前面的.2表示小数的位数
%s:表示字符串
这些和C语言中输入输出函数的占位符很相似
在程序中我们可以通过下面的代码对字符串进行格式化,也就是填充占位符中的内容:
String data = getResources().getString(R.string.data); data = String.format(data, 100 , 10.3 , " 2011-07-01 " );
最后运行结果如下:
整数型:100,浮点型:10.30,字符串:2011-07-01
===================================================================================
Android中动态改变string.xml中的字符串(Android Dynamic String)
1、首先需要在string.xml文件的前面添加如下头部:
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
2、strings.xml文件中可以用下面两种方法来设置参数的位置:
<string name="choose_number">选择号码:<xliff:g>%d</xliff:g> <xliff:g>%d</xliff:g></string>
<string name="choose_number">选择号码:%1$d %2$d</string>
3、动态改变字符串的方法如下:
getString(R.string.choose_numbe, 变量1, 变量2);//这样设置后就可以将参数传入xml
4、%后面是占位符的位置,从1开始。$后面是填充数据的类型,例如d代表整数类型。