获取格式化的字符串返回奇怪的结果

时间:2019-03-07 16:54:48

标签: android kotlin

我有一个使用以下方法的资源管理器

fun getString(@StringRes resId: Int, vararg params: Any): String {
    return context.getString(resId, params)
}

我这样称呼

resourceManager.getString(R.string.number_reps, "20")

这是字符串:

<string name="number_reps">%1$s reps</string>

由于某种原因,当我调用此方法时,它会返回这个非常奇怪的字符串:

[Ljava.lang.Object;@5356cf reps

有人知道为什么会这样吗

更新

这对我有用

String.format(resourceManager.getString(R.string.number_reps), "20")

2 个答案:

答案 0 :(得分:1)

尝试替换

C

通过

X

答案 1 :(得分:0)

您在访问字符串时使用了错误的密钥。

使用此resourceManager.getString(R.string.number_reps, "20")

您还可以使用String.format来获得与以下相同的结果,

String.format(getString(R.string.number_reps), "20")

相关问题