10

在一个 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)

我希望返回

我有 0 件商品

但它实际上返回

我有 1 件商品

为什么 ?

4

2 回答 2

7

数量字符串在一些平台和手机上被破坏,因为问题跟踪器和这个讨论“应该使用复数和数量字符串”指出。这取决于您无法控制的许多因素(即电话本地化)。

一种解决方案是采用像这样的外部库,它模仿相同的功能。

另一种解决方案在 android 中的复数文档中有说明。避免使用它并使用“数量中性”的公式,如“书籍:1”

于 2012-11-22T10:42:39.727 回答
-4

像这样更改代码

String text = getResources().getQuantityString(R.plurals.test, 0,0);
于 2012-11-21T12:22:41.197 回答