字符串资源文件用法中的格式语句

时间:2017-01-06 10:05:29

标签: android android-studio android-xml

我在strings.xml

中定义了这个
<string name="avg"> AVG %1$s</string>

在我的代码中,如果我想用它来定义AVG HR和AVG

String.format(context.getString(R.string.avg), context.getString(R.string.hr))
用于定义AVG的

我可以将其用作

String.format(context.getString(R.string.avg))

或者我应该经常这样做

String.format(context.getString(R.string.avg), " ")

2 个答案:

答案 0 :(得分:0)

您不需要使用String.format() 假设您在strings.xml

中有以下字符串
<string name="sample">AVG %1$s</string>
<string name="sample2">HR</string>

然后您可以将R.string.sample格式化为

getString(R.string.sample, getString(R.string.sample2)) // AVG HR

 getString(R.string.sample, "") //AVG

是的,如果你没有附加值,你必须通过""

答案 1 :(得分:-1)

无需使用String.formatgetString方法已经支持格式化。

例如:

 ((TextView) findViewById(R.id.text)).setText(getString(R.string.avg, "hr"));

将结果

  

AVG hr

((TextView) findViewById(R.id.text)).setText(getString(R.string.avg, ""));

将结果

  

AVG