我想使用复数资源来生成一个引用的数字,如"9"
。
在我的plurals.xml
:
<plurals name="posts">
<item quantity="other">\"%dd\"<\item>
</plurals>
代码:
String text = res.getQuantityString(R.plurals.posts, meUser.postCount);
当postCount
为9时,为什么text
变成"%dd"
而不是"9"
?
答案 0 :(得分:95)
使用
getQuantityString()
方法时,需要传递。{ 如果您的字符串包含带数字的字符串格式,则计数两次 例如,对于找到的字符串%d
,第一个计数 参数选择适当的复数字符串和第二个计数 参数插入%d
占位符。如果你的复数 字符串不包含字符串格式,您不需要传递getQuantityString
的第三个参数。
即res.getQuantityString(R.plurals.numberOfSongsAvailable, count, count);
答案 1 :(得分:-1)
以防万一有人今天像我一样出现脑瘫,仍然无法正常工作。
我不小心将模拟器留在了非英语语言环境中,这意味着我的“一个”翻译被忽略了!
(在我的案例中,仅使用了“其他”条目)