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性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...