Android字符串动态显示

在Android开发中,有时需要动态改变控件上字符串的部分内容,Android提供了<xliff:g>标签。

<xliff:g>标签介绍:

<stringname="appwidget_text_format"><xliff:gid="prefix">%1$s</xliff:g>:<xliff:gid="time">%2$s</xliff:g></string>

这个主要用于程序中,动态的插入内容时候使用,例如,

<stringname="time">当前时间:<xliff:gid="prefix">%1$s</xliff:g>时<xliff:gid="time">%2$s</xliff:g>分</string>

然后通过程序,context.getString(R.string.time,"10","05");

将会输出——当前时间:10时05分

属性id可以随便命名

属性example表示举例说明,可以省略

%n$ms:代表输出的是字符串,n代表是第几个参数,设置m的值可以在输出之前放置空格

%n$md:代表输出的是整数,n代表是第几个参数,设置m的值可以在输出之前放置空格,也可以设为0m,在输出之前放置m个0

%n$mf:代表输出的是浮点数,n代表是第几个参数,设置m的值可以控制小数位数,如m=2.2时,输出格式为00.00

<resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">

<string name="battery_history_minutes">"<xliff:g id="MINUTES">%1$d</xliff:g> 分 <xliff:g id="SECONDS">%2$d</xliff:g> 秒"</string>

<string name="battery_history_seconds">"<xliff:g id="SECONDS">%1$d</xliff:g> 秒"</string>

<string name="info"><xliff:g id="name">%1$s</xliff:g> <xliff:g id="height">%2$2.2f</xliff:g> cm <xliff:g id="age">%3$d</xliff:g>old</string>

</resources>
textview.setText(String.format(getString(R.string.info)), "Eirc", 170.2, 26);

也可以参考这篇博文:http://blog.csdn.net/wufen1103/article/details/7846691

相关推荐