android – getQuantityString返回错误的字符串0值

前端之家收集整理的这篇文章主要介绍了android – getQuantityString返回错误的字符串0值前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
Android应用程序中,我有以下字符串资源:
<plurals name="test">
   <item quantity="zero">"I have 0 item"</item>
   <item quantity="one">"I have 1 item"</item>
   <item quantity="other">"I have several items"</item>
</plurals>

和以下代码行:

String text = getResources().getQuantityString(R.plurals.test,0)

我期望返回

I have 0 item

但它实际上返回

I have 1 item

为什么

解决方法

数量字符串在一些Plattforms和手机上被打破为 issue Tracker,这个讨论 “Should Plurals and Quantity Strings be used”指出.这取决于许多你无法控制的因素(即电话本地化).

一个解决方案可以是像this one这样的外部库,它的功能相同.

另一种解决方案在android中的复数文档中有所描述.避免使用它,并使用“数量中性”配方,如“书:1”

猜你在找的Android相关文章