2014-07-16 33 views
7

如何使用浮动和双精度(小数位)xliff格式化字符串?Android getString():xliff格式float/double

<string name="test">Test <xliff:g id="float1">%1$f</xliff:g> <xliff:g id="float2">%1$.2f</xliff:g></string> 

代码:

mContext.getString(R.string.test, 1.23456); 

回答

9

您可以在xliff占位符单独定义小数位的数量每个号码如下:

<string name="test"> 
    First <xliff:g id="first_number" example="100.123">%1$.4f</xliff:g> number 
    is and second number is <xliff:g id="second_number" example="200.12">%2$.2f</xliff:g>. 
</string> 

用法:

mContext.getString(R.string.test, 100.123456789, 200.123456789); 

输出:

First number is 100.1234 and second number is 200.12. 

请注意,您必须为在这里使用编号的占位符%1f%2f,...

占位符结构对于例如%1$.4f如下:

  • %1是序列号
  • f是数据类型,在这种情况下浮点数
  • .4定义浮点数的小数位数,在这种情况下为4个