You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Java代码中调用strings.xml中的通用占位符字符串资源

解决Java代码中使用带占位符的Android字符串资源问题

你遇到的这个问题很常见——直接拼接字符串会保留%s占位符,原因是getString(R.string.xxx)只是获取了未替换占位符的原始字符串,并不会自动处理参数。不用新建资源的话,直接用getString()的重载方法就能搞定:

textView.setText(getString(R.string.generic_price_with_rupee_symbol, "100"));

如果你的item.price是数字类型,也可以直接传入参数:

textView.setText(getString(R.string.generic_price_with_rupee_symbol, item.price));

这个重载方法会自动把后续参数替换到字符串对应的占位符位置,和你在数据绑定里用@string/generic_price_with_rupee_symbol(item.price)的效果完全一致,而且不需要额外新增资源文件。

之前你用getString(...) + "100"的方式,相当于把原始的"₹ %s"和"100"直接拼接,结果自然是"₹ %s100",所以才会显示错误的占位符。用带参数的getString就能完美解决这个问题啦~

内容的提问来源于stack exchange,提问作者Khemraj Sharma

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 09:30:14