Android   发布时间:2022-04-28  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了数量“两”在Android Strings-Resources Plural中不起作用大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
Android允许翻译人员定义 Plurals.以下示例适用于我的语言环境’en’:
<plurals name="numberOfSongsAvailable">
    <item quantity="one">One song found.</item>
    <item quantity="other">%d songs found.</item>
</plurals>

但是为两个添加特殊值不起作用,仍然采用另一个版本.两个用法是否依赖于语言环境?那么,如果语言环境明确指定应该有两个版本,Android是否只采用这两个版本?

SO问题Android plurals treatment of “zero”在使用英语零时也发现同样的错误,但也不支持.除了避免我想要避免的Android复数之外,这个问题没有解决方案.

解决方法

Android正在使用CLDR复数系统,这不是它的工作原理(所以不要指望这会改变).

该系统在这里描述:

http://cldr.unicode.org/index/cldr-spec/plural-rules

简而言之,理解“one”并不意味着数字1是很重要的.相反,这些关键字是类别,属于每个类别的特定数字n由CLDR数据库中的规则定义:

http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/language_plural_rules.html

然似乎没有语言对0以外的任何东西使用“零”,但有些语言将0分配给“1”.肯定有很多情况下“两个”包含其他数字而不仅仅是2.

如果Android允许您执行您的预期操作,则无法将您的应用程序正确地翻译成具有更复杂复数规则的任意数量的语言.

大佬总结

以上是大佬教程为你收集整理的数量“两”在Android Strings-Resources Plural中不起作用全部内容,希望文章能够帮你解决数量“两”在Android Strings-Resources Plural中不起作用所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。