Android中XLIFF的应用

文章转载自:http://blog.csdn.net/xipiaoyouzi/article/details/7891153

今天看了一个google的demo,发现部分资源字符串在/res/values/string.xml中包含有类似xliff的节点,刚才查了一下,Xliff是XML Localization Interchange File Format 的缩写,中文名为XML本地化数据交换格式。
对于在Android的资源字符串中,可能会有类似下面的 <xliff:g id="FILE_NAME">%1$s</xliff:g> 写法,这里,id我们可以随便定义,后面的%1$s的1%表示这是第一个可替换量,s表示字符串
详细的介绍如下:

属性id可以随便命名
属性example表示举例说明,可以省略
%n$ms:代表输出的是字符串,n代表是第几个参数,设置m的值可以在输出之前放置空格
%n$md:代表输出的是整数,n代表是第几个参数,设置m的值可以在输出之前放置空格,也可以设为0m,在输出之前放置m个0
%n$mf:代表输出的是浮点数,n代表是第几个参数,设置m的值可以控制小数位数,如m=2.2时,输出格式为00.00

例如一个String中有多个需要替换的变量,可以在xml中定义如下变量:
<string name="info">your name is <xliff:g id="NAME">%1$s</xliff:g>, and your age is<xliff:g id="AGE">%2$s</xliff:g> </string>

程序中动态加载:
TextView tv = (TextView) findViewById(R.id.textView);
String info = getResources().getString(R.string.info,"jnhoodlum","22"); tv.setText(info);

最后要注意一点:在String里要增加XLIFF的 xmlns:
<resources xmlns:android="http://schemas.android.com/apk/res/android"xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 174,744评论 25 709
  • ¥开启¥ 【iAPP实现进入界面执行逐一显】 〖2017-08-25 15:22:14〗 《//首先开一个线程,因...
    小菜c阅读 6,761评论 0 17
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,281评论 19 139
  • 上一次写的好妈妈一定要买给孩子看的经典绘本(0-2岁)还比较受欢迎,这次写一篇升级篇给大家。 妍妍现在快满两岁了,...
    雨榭风亭阅读 2,027评论 0 6
  • 这些天,在等妈妈晚安的时候,爸爸一般都是在写日志。如果妈妈来了,爸爸就会和妈妈说会儿话,聊聊天,或者玩会儿游戏。 ...
    画念风阅读 423评论 0 0