今天看了一個google的demo,發現部分資源字符串在/res/values/string.xml中包含有相似xliff的節點,剛纔查了一下,Xliff是XML Localization Interchange File Format 的縮寫,中文名爲XML本地化數據交換格式。google
對於在Android的資源字符串中,可能會有相似下面的 <xliff:g id="FILE_NAME">%1$s</xliff:g> 寫法,這裏,id咱們能夠隨便定義,後面的%1$s的1%表示這是第一個可替換量,s表示字符串spa
詳細的介紹以下:.net
屬性id能夠隨便命名
屬性example表示舉例說明,能夠省略
%n$ms:表明輸出的是字符串,n表明是第幾個參數,設置m的值能夠在輸出以前放置空格
%n$md:表明輸出的是整數,n表明是第幾個參數,設置m的值能夠在輸出以前放置空格,也能夠設爲0m,在輸出以前放置m個0
%n$mf:表明輸出的是浮點數,n表明是第幾個參數,設置m的值能夠控制小數位數,如m=2.2時,輸出格式爲00.00orm
例如一個String中有多個須要替換的變量,能夠在xml中定義以下變量: 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>blog
程序中動態加載:ip
TextView tv = (TextView) findViewById(R.id.textView);資源
String info = getResources().getString(R.string.info,"jnhoodlum","22");字符串
tv.setText(info);get
最後要注意一點:在String裏要增長XLIFF的 xmlns:
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
轉 http://blog.csdn.net/xipiaoyouzi/article/details/7891153